diff options
author | Zeev Suraski <zeev@php.net> | 2006-06-05 13:58:52 +0000 |
---|---|---|
committer | Zeev Suraski <zeev@php.net> | 2006-06-05 13:58:52 +0000 |
commit | 51d495850a74177f38207b1e39c3365b77a5a7d6 (patch) | |
tree | b7410f4625f924023eedd812142e797b5591fe3e /Zend/zend_objects.c | |
parent | 163f0da75a820a52fa06bad1e420df1cc644bbd3 (diff) | |
download | php-git-51d495850a74177f38207b1e39c3365b77a5a7d6.tar.gz |
Restore ZE1 compatibility mode (Zend Engine part - the modules patches
will follow later today)
Diffstat (limited to 'Zend/zend_objects.c')
-rw-r--r-- | Zend/zend_objects.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Zend/zend_objects.c b/Zend/zend_objects.c index e2d86e8fe8..6dc4ba4aa3 100644 --- a/Zend/zend_objects.c +++ b/Zend/zend_objects.c @@ -158,8 +158,11 @@ static void zval_add_ref_or_clone(zval **p) ZEND_API void zend_objects_clone_members(zend_object *new_object, zend_object_value new_obj_val, zend_object *old_object, zend_object_handle handle TSRMLS_DC) { - zend_hash_copy(new_object->properties, old_object->properties, (copy_ctor_func_t) zval_add_ref, (void *) NULL /* Not used anymore */, sizeof(zval *)); - + if (EG(ze1_compatibility_mode)) { + zend_hash_copy(new_object->properties, old_object->properties, (copy_ctor_func_t) zval_add_ref_or_clone, (void *) NULL /* Not used anymore */, sizeof(zval *)); + } else { + zend_hash_copy(new_object->properties, old_object->properties, (copy_ctor_func_t) zval_add_ref, (void *) NULL /* Not used anymore */, sizeof(zval *)); + } if (old_object->ce->clone) { zval *new_obj; |