diff options
author | Andi Gutmans <andi@php.net> | 2001-08-16 14:04:04 +0000 |
---|---|---|
committer | Andi Gutmans <andi@php.net> | 2001-08-16 14:04:04 +0000 |
commit | ea48c0c46acc1d7ca6e9fb5cc078f0393b4e63ac (patch) | |
tree | f927a3dd4705d0ecb3a53021ac02b0a393755388 /Zend/zend_variables.c | |
parent | 351048297185f37175170cf3ac970bac94f915da (diff) | |
download | php-git-ea48c0c46acc1d7ca6e9fb5cc078f0393b4e63ac.tar.gz |
- Fix a bug in method calls.
- Try to get the old copying behavior of objects to work (doesn't work yet).
Diffstat (limited to 'Zend/zend_variables.c')
-rw-r--r-- | Zend/zend_variables.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/Zend/zend_variables.c b/Zend/zend_variables.c index f919fb8c85..6104358382 100644 --- a/Zend/zend_variables.c +++ b/Zend/zend_variables.c @@ -54,7 +54,7 @@ ZEND_API void _zval_dtor(zval *zvalue ZEND_FILE_LINE_DC) } break; case IS_OBJECT: - zvalue->value.obj.handlers.del_ref(zvalue->value.obj.handle); + zvalue->value.obj.handlers->del_ref(zvalue->value.obj.handle); break; case IS_RESOURCE: { TSRMLS_FETCH(); @@ -119,7 +119,11 @@ ZEND_API int _zval_copy_ctor(zval *zvalue ZEND_FILE_LINE_DC) } break; case IS_OBJECT: - zvalue->value.obj.handlers.add_ref(zvalue->value.obj.handle); +#if 0 + zvalue->value.obj = zvalue->value.obj.handlers->clone_obj(zvalue->value.obj.handle); +#else + zvalue->value.obj.handlers->add_ref(zvalue->value.obj.handle); +#endif break; } return SUCCESS; @@ -152,8 +156,7 @@ ZEND_API int zval_persist(zval *zvalue TSRMLS_DC) zend_hash_apply(zvalue->value.ht, (apply_func_t) zval_persist TSRMLS_CC); break; case IS_OBJECT: - persist_alloc(zvalue->value.obj.properties); - zend_hash_apply(zvalue->value.obj.properties, (apply_func_t) zval_persist TSRMLS_CC); + return FAILURE; /* objects cannot be persisted */ break; } return SUCCESS; |