Browse Source

Fixed bug #67215 (php-cgi work with opcache, may be segmentation fault happen)

pull/707/merge
Xinchen Hui 12 years ago
parent
commit
2034ace052
  1. 6
      NEWS
  2. 13
      ext/opcache/zend_accelerator_util_funcs.c

6
NEWS

@ -18,7 +18,11 @@ PHP NEWS
(Adam)
- FPM:
. Fix bug #67531 (syslog cannot be set in pool configuration). (Remi)
. Fixed bug #67531 (syslog cannot be set in pool configuration). (Remi)
- OPCache:
. Fixed bug #67215 (php-cgi work with opcache, may be segmentation fault
happen) (Dmitry, Laruence)
- pgsql:
. Fix bug #67550 (Error in code "form" instead of "from", pgsql.c, line 756),

13
ext/opcache/zend_accelerator_util_funcs.c

@ -837,16 +837,11 @@ static int zend_hash_unique_copy(HashTable *target, HashTable *source, unique_co
if (p->nKeyLength > 0 && p->arKey[0] == 0) {
/* Mangled key */
#if ZEND_EXTENSION_API_NO >= PHP_5_3_X_API_NO
if (((zend_function*)p->pData)->common.fn_flags & ZEND_ACC_CLOSURE) {
/* update closure */
if (zend_hash_quick_update(target, p->arKey, p->nKeyLength, p->h, p->pData, size, &t) == SUCCESS) {
if (pCopyConstructor) {
pCopyConstructor(t);
}
if (zend_hash_quick_update(target, p->arKey, p->nKeyLength, p->h, p->pData, size, &t) == SUCCESS) {
if (pCopyConstructor) {
pCopyConstructor(t);
}
} else {
/* ignore and wait for runtime */
}
}
#endif
} else if (!ignore_dups && zend_hash_quick_find(target, p->arKey, p->nKeyLength, p->h, &t) == SUCCESS) {
*fail_data = p->pData;

Loading…
Cancel
Save