summaryrefslogtreecommitdiff
path: root/Zend/zend_execute_API.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2005-10-20 08:14:59 +0000
committerDmitry Stogov <dmitry@php.net>2005-10-20 08:14:59 +0000
commit03cb8e959b20f38245e66db129764d66f4fee334 (patch)
treeb927a6b951e21aeb8eaf7c8e90593318d37ad49f /Zend/zend_execute_API.c
parentd32c6512e1052f3c89fe0604ae1b5748d438c624 (diff)
downloadphp-git-03cb8e959b20f38245e66db129764d66f4fee334.tar.gz
Fixed bug #34767 (Zend Engine 1 Compatibility not copying objects correctly)
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r--Zend/zend_execute_API.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index 9022ee0de3..c745e65798 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -386,6 +386,13 @@ ZEND_API void _zval_ptr_dtor(zval **zval_ptr ZEND_FILE_LINE_DC)
zval_dtor(*zval_ptr);
safe_free_zval_ptr_rel(*zval_ptr ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC);
} else if ((*zval_ptr)->refcount == 1) {
+ if ((*zval_ptr)->type == IS_OBJECT) {
+ TSRMLS_FETCH();
+
+ if (EG(ze1_compatibility_mode)) {
+ return;
+ }
+ }
(*zval_ptr)->is_ref = 0;
}
}