com php-src: Revert "Fixed bug #70656 (require() statement broken after opcache_reset() or a few hours of use)" : NEWS ext/opcache/ZendAccelerator.c

From: Date: Tue, 27 Oct 2015 00:26:30 +0000
Subject: com php-src: Revert "Fixed bug #70656 (require() statement broken after opcache_reset() or a few hours of use)" : NEWS ext/opcache/ZendAccelerator.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-89579@lists.php.net to get a copy of this message
Commit: 31553f07f25184ff451ddb3c91c3cc90b88c6da1 Author: Xinchen Hui <laruence@gmail.com> Mon, 26 Oct 2015 17:26:30 -0700 Parents: 3ef96c2cc6f3a1dddd8479e6c733f44e8dbcb5e9 Branches: PHP-7.0 master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=31553f07f25184ff451ddb3c91c3cc90b88c6da1 Log: Revert "Fixed bug #70656 (require() statement broken after opcache_reset() or a few hours of use)" This reverts commit 3ef96c2cc6f3a1dddd8479e6c733f44e8dbcb5e9. Bugs: https://bugs.php.net/70656 Changed paths: M NEWS M ext/opcache/ZendAccelerator.c Diff: diff --git a/NEWS b/NEWS index d3f0137..f4e6c8d 100644 --- a/NEWS +++ b/NEWS @@ -2,13 +2,9 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? ??? 2015, PHP 7.0.1 -- Opcache: - . Fixed bug #70656 (require() statement broken after opcache_reset() or a - few hours of use). (Laruence) - - Standard: . Fixed bug #70808 (array_merge_recursive corrupts memory of unset items). - (Laruence) + (laruence) - XSL: . Fixed bug #70678 (PHP7 returns true when false is expected). (Felipe) diff --git a/ext/opcache/ZendAccelerator.c b/ext/opcache/ZendAccelerator.c index a7fb07b..eaadac6 100644 --- a/ext/opcache/ZendAccelerator.c +++ b/ext/opcache/ZendAccelerator.c @@ -249,28 +249,24 @@ static void accel_interned_strings_restore_state(void) uint nIndex; Bucket *p; - if (EXPECTED(ZCSG(interned_strings_top) > ZCSG(interned_strings_saved_top))) { - memset(ZCSG(interned_strings_saved_top), - 0, ZCSG(interned_strings_top) - ZCSG(interned_strings_saved_top)); - ZCSG(interned_strings_top) = ZCSG(interned_strings_saved_top); - while (idx > 0) { - idx--; - p = ZCSG(interned_strings).arData + idx; - if ((char*)p->key < ZCSG(interned_strings_top)) break; - ZCSG(interned_strings).nNumUsed--; - ZCSG(interned_strings).nNumOfElements--; - - nIndex = p->h | ZCSG(interned_strings).nTableMask; - if (HT_HASH(&ZCSG(interned_strings), nIndex) == HT_IDX_TO_HASH(idx)) { - HT_HASH(&ZCSG(interned_strings), nIndex) = Z_NEXT(p->val); - } else { - uint32_t prev = HT_HASH(&ZCSG(interned_strings), nIndex); - while (Z_NEXT(HT_HASH_TO_BUCKET(&ZCSG(interned_strings), prev)->val) != idx) { - prev = Z_NEXT(HT_HASH_TO_BUCKET(&ZCSG(interned_strings), prev)->val); - } - Z_NEXT(HT_HASH_TO_BUCKET(&ZCSG(interned_strings), prev)->val) = Z_NEXT(p->val); - } - } + ZCSG(interned_strings_top) = ZCSG(interned_strings_saved_top); + while (idx > 0) { + idx--; + p = ZCSG(interned_strings).arData + idx; + if ((char*)p->key < ZCSG(interned_strings_top)) break; + ZCSG(interned_strings).nNumUsed--; + ZCSG(interned_strings).nNumOfElements--; + + nIndex = p->h | ZCSG(interned_strings).nTableMask; + if (HT_HASH(&ZCSG(interned_strings), nIndex) == HT_IDX_TO_HASH(idx)) { + HT_HASH(&ZCSG(interned_strings), nIndex) = Z_NEXT(p->val); + } else { + uint32_t prev = HT_HASH(&ZCSG(interned_strings), nIndex); + while (Z_NEXT(HT_HASH_TO_BUCKET(&ZCSG(interned_strings), prev)->val) != idx) { + prev = Z_NEXT(HT_HASH_TO_BUCKET(&ZCSG(interned_strings), prev)->val); + } + Z_NEXT(HT_HASH_TO_BUCKET(&ZCSG(interned_strings), prev)->val) = Z_NEXT(p->val); + } } }

« previous php.cvs (#89579) next »