summaryrefslogtreecommitdiff
path: root/Zend/zend_objects_API.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2018-11-06 22:37:04 +0300
committerDmitry Stogov <dmitry@zend.com>2018-11-06 22:37:04 +0300
commitc994d90db27ccc36caef32a3abe1ade6e8289ce1 (patch)
tree16cc5bf08d0fc6e46628b1e31de21ff4a34031b5 /Zend/zend_objects_API.c
parentbfaf662ac2e58c16208224f32cb8387a35b3da97 (diff)
downloadphp-git-c994d90db27ccc36caef32a3abe1ade6e8289ce1.tar.gz
Reorder conditions and set expectation.
Diffstat (limited to 'Zend/zend_objects_API.c')
-rw-r--r--Zend/zend_objects_API.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_objects_API.c b/Zend/zend_objects_API.c
index d82eea59c5..b3e4356a2c 100644
--- a/Zend/zend_objects_API.c
+++ b/Zend/zend_objects_API.c
@@ -131,11 +131,11 @@ ZEND_API void ZEND_FASTCALL zend_objects_store_put(zend_object *object)
/* When in shutdown sequesnce - do not reuse previously freed handles, to make sure
* the dtors for newly created objects are called in zend_objects_store_call_destructors() loop
*/
- if (!(EG(flags) & EG_FLAGS_IN_SHUTDOWN) && EG(objects_store).free_list_head != -1) {
+ if (EG(objects_store).free_list_head != -1 && EXPECTED(!(EG(flags) & EG_FLAGS_IN_SHUTDOWN))) {
handle = EG(objects_store).free_list_head;
EG(objects_store).free_list_head = GET_OBJ_BUCKET_NUMBER(EG(objects_store).object_buckets[handle]);
} else {
- if (EG(objects_store).top == EG(objects_store).size) {
+ if (UNEXPECTED(EG(objects_store).top == EG(objects_store).size)) {
uint32_t new_size = 2 * EG(objects_store).size;
EG(objects_store).object_buckets = (zend_object **) erealloc(EG(objects_store).object_buckets, new_size * sizeof(zend_object*));
/* Assign size after realloc, in case it fails */