]> granicus.if.org Git - php/commitdiff
Fixed bug #24394 (serializing cross-referenced objects causes segfault)
authorMoriyoshi Koizumi <moriyoshi@php.net>
Tue, 4 Nov 2003 16:08:10 +0000 (16:08 +0000)
committerMoriyoshi Koizumi <moriyoshi@php.net>
Tue, 4 Nov 2003 16:08:10 +0000 (16:08 +0000)
ext/standard/var.c

index 08b4e8b6cb1ceea84a1de6917825d020e3946a0b..898bcf8e0fe995212aed3e27effed086de945e3b 100644 (file)
@@ -513,7 +513,7 @@ static void php_var_serialize_intern(smart_str *buf, zval **struc, HashTable *va
 
        if(var_hash 
                        && php_add_var_hash(var_hash, *struc, (void *) &var_already) == FAILURE 
-                       && (*struc)->is_ref) {
+                       && ((*struc)->is_ref || Z_TYPE_PP(struc) == IS_OBJECT)) {
                smart_str_appendl(buf, "R:", 2);
                smart_str_append_long(buf, *var_already);
                smart_str_appendc(buf, ';');