diff options
-rw-r--r-- | ext/opcache/ZendAccelerator.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ext/opcache/ZendAccelerator.c b/ext/opcache/ZendAccelerator.c index c09b08d9b8..3fa015e162 100644 --- a/ext/opcache/ZendAccelerator.c +++ b/ext/opcache/ZendAccelerator.c @@ -2366,6 +2366,7 @@ static int zend_accel_init_shm(void) accel_shared_globals = zend_shared_alloc(sizeof(zend_accel_shared_globals)); if (!accel_shared_globals) { zend_accel_error(ACCEL_LOG_FATAL, "Insufficient shared memory!"); + zend_shared_alloc_unlock(); return FAILURE; } ZSMMG(app_shared_globals) = accel_shared_globals; @@ -2383,6 +2384,7 @@ static int zend_accel_init_shm(void) ZCSG(interned_strings_start) = zend_shared_alloc((ZCG(accel_directives).interned_strings_buffer * 1024 * 1024)); if (!data || !ZCSG(interned_strings_start)) { zend_accel_error(ACCEL_LOG_FATAL, ACCELERATOR_PRODUCT_NAME " cannot allocate buffer for interned strings"); + zend_shared_alloc_unlock(); return FAILURE; } HT_SET_DATA_ADDR(&ZCSG(interned_strings), data); |