]> granicus.if.org Git - php/commitdiff
Fixed possible GC failure because of EG(object_store).object_buckets reallocation
authorDmitry Stogov <dmitry@php.net>
Thu, 24 Jan 2008 11:48:54 +0000 (11:48 +0000)
committerDmitry Stogov <dmitry@php.net>
Thu, 24 Jan 2008 11:48:54 +0000 (11:48 +0000)
Zend/zend_gc.c

index 48afebd4485a8a83846c1fb908d8d1cc4d30f11e..88b89fc927b75523cf769de9fdfb05a12d621230 100644 (file)
@@ -203,6 +203,7 @@ ZEND_API void gc_zobj_possible_root(zval *zv TSRMLS_DC)
                                zv->refcount__gc++;
                                gc_collect_cycles(TSRMLS_C);
                                zv->refcount__gc--;
+                               obj = &EG(objects_store).object_buckets[Z_OBJ_HANDLE_P(zv)].bucket.obj;
                                GC_SET_PURPLE(obj->buffered);
                                newRoot = GC_G(unused);
                        }