Lines Matching refs:extra
305 an extra two bytes of parameters. */
1422 PUBL(extra) *extra = NULL;
1529 extra = (PUBL(extra) *)(PUBL(malloc))
1530 (sizeof(PUBL(extra)) + sizeof(pcre_study_data));
1531 if (extra == NULL)
1537 study = (pcre_study_data *)((char *)extra + sizeof(PUBL(extra)));
1538 extra->flags = PCRE_EXTRA_STUDY_DATA;
1539 extra->study_data = study;
1581 compilation fails, abandon the extra block and return NULL, unless
1585 extra->executable_jit = NULL;
1587 PRIV(jit_compile)(re, extra, JIT_COMPILE);
1589 PRIV(jit_compile)(re, extra, JIT_PARTIAL_SOFT_COMPILE);
1591 PRIV(jit_compile)(re, extra, JIT_PARTIAL_HARD_COMPILE);
1593 if (study->flags == 0 && (extra->flags & PCRE_EXTRA_EXECUTABLE_JIT) == 0 &&
1597 pcre_free_study(extra);
1599 pcre16_free_study(extra);
1601 pcre32_free_study(extra);
1603 extra = NULL;
1608 return extra;
1624 pcre_free_study(pcre_extra *extra)
1627 pcre16_free_study(pcre16_extra *extra)
1630 pcre32_free_study(pcre32_extra *extra)
1633 if (extra == NULL)
1636 if ((extra->flags & PCRE_EXTRA_EXECUTABLE_JIT) != 0 &&
1637 extra->executable_jit != NULL)
1638 PRIV(jit_free)(extra->executable_jit);
1640 PUBL(free)(extra);