]> granicus.if.org Git - php/commitdiff
Fixed get_object_vars()
authorDmitry Stogov <dmitry@zend.com>
Fri, 21 Feb 2014 15:19:44 +0000 (19:19 +0400)
committerDmitry Stogov <dmitry@zend.com>
Fri, 21 Feb 2014 15:19:44 +0000 (19:19 +0400)
Zend/zend_builtin_functions.c

index 5470c057ad522dbd553545e589724a45f6cd9019..d421fd927ee04a2c326b0f3db2698340ef6b6706 100644 (file)
@@ -1003,7 +1003,7 @@ ZEND_FUNCTION(get_object_vars)
                        if (zend_check_property_access(zobj, key TSRMLS_CC) == SUCCESS) {
                                zend_unmangle_property_name_ex(key->val, key->len, &class_name, &prop_name, (int*) &prop_len);
                                /* Not separating references */
-                               Z_ADDREF_P(value);
+                               if (IS_REFCOUNTED(Z_TYPE_P(value))) Z_ADDREF_P(value);
                                add_assoc_zval_ex(return_value, prop_name, prop_len, value);
                        }
                }