mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
Declare ext/pcre constants in stubs (#9077)
This commit is contained in:
parent
8487d8fa91
commit
28944b8fbe
3 changed files with 134 additions and 30 deletions
|
@ -18,7 +18,6 @@
|
|||
#include "php_ini.h"
|
||||
#include "php_globals.h"
|
||||
#include "php_pcre.h"
|
||||
#include "php_pcre_arginfo.h"
|
||||
#include "ext/standard/info.h"
|
||||
#include "ext/standard/basic_functions.h"
|
||||
#include "zend_smart_str.h"
|
||||
|
@ -43,6 +42,16 @@
|
|||
|
||||
#define PCRE_CACHE_SIZE 4096
|
||||
|
||||
#ifdef HAVE_PCRE_JIT_SUPPORT
|
||||
#define PHP_PCRE_JIT_SUPPORT 1
|
||||
#else
|
||||
#define PHP_PCRE_JIT_SUPPORT 0
|
||||
#endif
|
||||
|
||||
char *php_pcre_version;
|
||||
|
||||
#include "php_pcre_arginfo.h"
|
||||
|
||||
struct _pcre_cache_entry {
|
||||
pcre2_code *re;
|
||||
uint32_t preg_options;
|
||||
|
@ -422,8 +431,6 @@ static PHP_MINFO_FUNCTION(pcre)
|
|||
/* {{{ PHP_MINIT_FUNCTION(pcre) */
|
||||
static PHP_MINIT_FUNCTION(pcre)
|
||||
{
|
||||
char *version;
|
||||
|
||||
#ifdef HAVE_PCRE_JIT_SUPPORT
|
||||
if (UNEXPECTED(!pcre2_init_ok)) {
|
||||
/* Retry. */
|
||||
|
@ -436,33 +443,9 @@ static PHP_MINIT_FUNCTION(pcre)
|
|||
|
||||
REGISTER_INI_ENTRIES();
|
||||
|
||||
REGISTER_LONG_CONSTANT("PREG_PATTERN_ORDER", PREG_PATTERN_ORDER, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_SET_ORDER", PREG_SET_ORDER, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_OFFSET_CAPTURE", PREG_OFFSET_CAPTURE, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_UNMATCHED_AS_NULL", PREG_UNMATCHED_AS_NULL, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_SPLIT_NO_EMPTY", PREG_SPLIT_NO_EMPTY, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_SPLIT_DELIM_CAPTURE", PREG_SPLIT_DELIM_CAPTURE, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_SPLIT_OFFSET_CAPTURE", PREG_SPLIT_OFFSET_CAPTURE, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_GREP_INVERT", PREG_GREP_INVERT, CONST_CS | CONST_PERSISTENT);
|
||||
php_pcre_version = _pcre2_config_str(PCRE2_CONFIG_VERSION);
|
||||
|
||||
REGISTER_LONG_CONSTANT("PREG_NO_ERROR", PHP_PCRE_NO_ERROR, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_INTERNAL_ERROR", PHP_PCRE_INTERNAL_ERROR, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_BACKTRACK_LIMIT_ERROR", PHP_PCRE_BACKTRACK_LIMIT_ERROR, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_RECURSION_LIMIT_ERROR", PHP_PCRE_RECURSION_LIMIT_ERROR, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_BAD_UTF8_ERROR", PHP_PCRE_BAD_UTF8_ERROR, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_BAD_UTF8_OFFSET_ERROR", PHP_PCRE_BAD_UTF8_OFFSET_ERROR, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PREG_JIT_STACKLIMIT_ERROR", PHP_PCRE_JIT_STACKLIMIT_ERROR, CONST_CS | CONST_PERSISTENT);
|
||||
version = _pcre2_config_str(PCRE2_CONFIG_VERSION);
|
||||
REGISTER_STRING_CONSTANT("PCRE_VERSION", version, CONST_CS | CONST_PERSISTENT);
|
||||
free(version);
|
||||
REGISTER_LONG_CONSTANT("PCRE_VERSION_MAJOR", PCRE2_MAJOR, CONST_CS | CONST_PERSISTENT);
|
||||
REGISTER_LONG_CONSTANT("PCRE_VERSION_MINOR", PCRE2_MINOR, CONST_CS | CONST_PERSISTENT);
|
||||
|
||||
#ifdef HAVE_PCRE_JIT_SUPPORT
|
||||
REGISTER_BOOL_CONSTANT("PCRE_JIT_SUPPORT", 1, CONST_CS | CONST_PERSISTENT);
|
||||
#else
|
||||
REGISTER_BOOL_CONSTANT("PCRE_JIT_SUPPORT", 0, CONST_CS | CONST_PERSISTENT);
|
||||
#endif
|
||||
register_php_pcre_symbols(module_number);
|
||||
|
||||
return SUCCESS;
|
||||
}
|
||||
|
@ -473,6 +456,8 @@ static PHP_MSHUTDOWN_FUNCTION(pcre)
|
|||
{
|
||||
UNREGISTER_INI_ENTRIES();
|
||||
|
||||
free(php_pcre_version);
|
||||
|
||||
return SUCCESS;
|
||||
}
|
||||
/* }}} */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue