]> granicus.if.org Git - php/commitdiff
Fixed bug #31402 (unserialize creates a field containing a reference when it should...
authorDmitry Stogov <dmitry@php.net>
Fri, 17 Jun 2005 13:52:58 +0000 (13:52 +0000)
committerDmitry Stogov <dmitry@php.net>
Fri, 17 Jun 2005 13:52:58 +0000 (13:52 +0000)
ext/standard/tests/serialize/bug31402.phpt
ext/standard/var_unserializer.c
ext/standard/var_unserializer.re

index 4f8bf0ca5b6277e3d8862282ba68e76a4837f0ef..7aa3e744a0aa26deb4e0b1cc27f770ea49a5114e 100644 (file)
@@ -54,7 +54,7 @@ object(y)(2) {
   ["A"]=>
   array(2) {
     [1]=>
-    &object(x)(1) {
+    object(x)(1) {
       ["i"]=>
       int(1)
     }
@@ -65,7 +65,7 @@ object(y)(2) {
     }
   }
   ["B"]=>
-  &object(x)(1) {
+  object(x)(1) {
     ["i"]=>
     int(1)
   }
index f5548775012ad1af144bdc7a17ac7c81601a8ad5..50757b6328d402402f1c688e53f61bbaad120c18 100644 (file)
@@ -1017,7 +1017,7 @@ yy86:
        }
        *rval = *rval_ref;
        (*rval)->refcount++;
-       (*rval)->is_ref = 1;
+       (*rval)->is_ref = 0;
        
        return 1;
 }
index 78b93ca5e604806a5645755384eafe871cc6a26d..a4aee72e154bd5dcd76a3aec0882350ce8b90338 100644 (file)
@@ -382,7 +382,7 @@ PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER)
        }
        *rval = *rval_ref;
        (*rval)->refcount++;
-       (*rval)->is_ref = 1;
+       (*rval)->is_ref = 0;
        
        return 1;
 }