| 282 | #endif |
| 283 | |
| 284 | static APR_INLINE |
| 285 | match_data_pt alloc_match_data(apr_size_t size, |
| 286 | match_vector_pt small_vector) |
| 287 | { |
| 288 | match_data_pt data; |
| 289 | |
| 290 | #ifdef HAVE_PCRE2 |
| 291 | data = pcre2_match_data_create(size, NULL); |
| 292 | #else |
| 293 | if (size > POSIX_MALLOC_THRESHOLD) { |
| 294 | data = malloc(size * sizeof(int) * 3); |
| 295 | } |
| 296 | else { |
| 297 | data = small_vector; |
| 298 | } |
| 299 | #endif |
| 300 | |
| 301 | return data; |
| 302 | } |
| 303 | |
| 304 | static APR_INLINE |
| 305 | void free_match_data(match_data_pt data, apr_size_t size) |