summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/spl/spl_observer.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/spl/spl_observer.c b/ext/spl/spl_observer.c
index 14a0bade71..619ed3883a 100644
--- a/ext/spl/spl_observer.c
+++ b/ext/spl/spl_observer.c
@@ -363,7 +363,7 @@ static HashTable *spl_object_storage_get_gc(zval *obj, zval **table, int *n) /*
spl_SplObjectStorage *intern = Z_SPLOBJSTORAGE_P(obj);
spl_SplObjectStorageElement *element;
- if (intern->storage.nNumOfElements > intern->gcdata_num) {
+ if (intern->storage.nNumOfElements * 2 > intern->gcdata_num) {
intern->gcdata_num = intern->storage.nNumOfElements * 2;
intern->gcdata = (zval*)erealloc(intern->gcdata, sizeof(zval) * intern->gcdata_num);
}