svn: /php/php-src/ branches/PHP_5_3/ext/pcre/php_pcre.c branches/PHP_5_4/ext/pcre/php_pcre.c trunk/ext/pcre/php_pcre.c

From: Date: Mon, 06 Feb 2012 18:18:53 +0000
Subject: svn: /php/php-src/ branches/PHP_5_3/ext/pcre/php_pcre.c branches/PHP_5_4/ext/pcre/php_pcre.c trunk/ext/pcre/php_pcre.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-67641@lists.php.net to get a copy of this message
rasmus Mon, 06 Feb 2012 18:18:53 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=323097 Log: Safer way to call pcre_fullinfo - bug 60986 Bug: https://bugs.php.net/60986 (Critical) pcre_get_compiled_regex_cache: php_pcre.c: undefined reference to 'pcre_info' Changed paths: U php/php-src/branches/PHP_5_3/ext/pcre/php_pcre.c U php/php-src/branches/PHP_5_4/ext/pcre/php_pcre.c U php/php-src/trunk/ext/pcre/php_pcre.c Modified: php/php-src/branches/PHP_5_3/ext/pcre/php_pcre.c =================================================================== --- php/php-src/branches/PHP_5_3/ext/pcre/php_pcre.c 2012-02-06 18:11:56 UTC (rev 323096) +++ php/php-src/branches/PHP_5_3/ext/pcre/php_pcre.c 2012-02-06 18:18:53 UTC (rev 323097) @@ -241,6 +241,7 @@ char *pattern; int do_study = 0; int poptions = 0; + int count = 0; unsigned const char *tables = NULL; #if HAVE_SETLOCALE char *locale = setlocale(LC_CTYPE, NULL); @@ -255,7 +256,7 @@ * We use a quick pcre_fullinfo() check to see whether cache is corrupted, and if it * is, we flush it and compile the pattern from scratch. */ - if (pcre_fullinfo(pce->re, NULL, NULL, NULL) == PCRE_ERROR_BADMAGIC) { + if (pcre_fullinfo(pce->re, NULL, PCRE_INFO_CAPTURECOUNT, &count) == PCRE_ERROR_BADMAGIC) { zend_hash_clean(&PCRE_G(pcre_cache)); } else { #if HAVE_SETLOCALE Modified: php/php-src/branches/PHP_5_4/ext/pcre/php_pcre.c =================================================================== --- php/php-src/branches/PHP_5_4/ext/pcre/php_pcre.c 2012-02-06 18:11:56 UTC (rev 323096) +++ php/php-src/branches/PHP_5_4/ext/pcre/php_pcre.c 2012-02-06 18:18:53 UTC (rev 323097) @@ -241,6 +241,7 @@ char *pattern; int do_study = 0; int poptions = 0; + int count = 0; unsigned const char *tables = NULL; #if HAVE_SETLOCALE char *locale = setlocale(LC_CTYPE, NULL); @@ -255,7 +256,7 @@ * We use a quick pcre_fullinfo() check to see whether cache is corrupted, and if it * is, we flush it and compile the pattern from scratch. */ - if (pcre_fullinfo(pce->re, NULL, NULL, NULL) == PCRE_ERROR_BADMAGIC) { + if (pcre_fullinfo(pce->re, NULL, PCRE_INFO_CAPTURECOUNT, &count) == PCRE_ERROR_BADMAGIC) { zend_hash_clean(&PCRE_G(pcre_cache)); } else { #if HAVE_SETLOCALE Modified: php/php-src/trunk/ext/pcre/php_pcre.c =================================================================== --- php/php-src/trunk/ext/pcre/php_pcre.c 2012-02-06 18:11:56 UTC (rev 323096) +++ php/php-src/trunk/ext/pcre/php_pcre.c 2012-02-06 18:18:53 UTC (rev 323097) @@ -241,6 +241,7 @@ char *pattern; int do_study = 0; int poptions = 0; + int count = 0; unsigned const char *tables = NULL; #if HAVE_SETLOCALE char *locale = setlocale(LC_CTYPE, NULL); @@ -255,7 +256,7 @@ * We use a quick pcre_fullinfo() check to see whether cache is corrupted, and if it * is, we flush it and compile the pattern from scratch. */ - if (pcre_fullinfo(pce->re, NULL, NULL, NULL) == PCRE_ERROR_BADMAGIC) { + if (pcre_fullinfo(pce->re, NULL, PCRE_INFO_CAPTURECOUNT, &count) == PCRE_ERROR_BADMAGIC) { zend_hash_clean(&PCRE_G(pcre_cache)); } else { #if HAVE_SETLOCALE

« previous php.cvs (#67641) next »