summaryrefslogtreecommitdiff
path: root/Zend/zend_variables.c
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>1999-08-27 19:17:19 +0000
committerZeev Suraski <zeev@php.net>1999-08-27 19:17:19 +0000
commitaa8b27ba1d6867e367416a02a6c47489dc3bbc76 (patch)
treeeab8f5b7198cc956f0e8ae966506e9a0f2a3b6e1 /Zend/zend_variables.c
parent9eea00c086d4d2c5e65b4b557f2cfb699a81d243 (diff)
downloadphp-git-aa8b27ba1d6867e367416a02a6c47489dc3bbc76.tar.gz
Better debug macros
Diffstat (limited to 'Zend/zend_variables.c')
-rw-r--r--Zend/zend_variables.c31
1 files changed, 26 insertions, 5 deletions
diff --git a/Zend/zend_variables.c b/Zend/zend_variables.c
index bb23789848..81372839b8 100644
--- a/Zend/zend_variables.c
+++ b/Zend/zend_variables.c
@@ -51,7 +51,7 @@ ZEND_API inline void var_uninit(zval *var)
}
-ZEND_API int zval_dtor(zval *zvalue)
+ZEND_API int _zval_dtor(zval *zvalue ZEND_FILE_LINE_DC)
{
if (zvalue->type==IS_LONG) {
return 1;
@@ -59,20 +59,20 @@ ZEND_API int zval_dtor(zval *zvalue)
switch(zvalue->type) {
case IS_STRING:
case IS_CONSTANT:
- STR_FREE(zvalue->value.str.val);
+ STR_FREE_REL(zvalue->value.str.val);
break;
case IS_ARRAY: {
ELS_FETCH();
if (zvalue->value.ht && (zvalue->value.ht != &EG(symbol_table))) {
zend_hash_destroy(zvalue->value.ht);
- efree(zvalue->value.ht);
+ efree_rel(zvalue->value.ht);
}
}
break;
case IS_OBJECT:
zend_hash_destroy(zvalue->value.obj.properties);
- efree(zvalue->value.obj.properties);
+ efree_rel(zvalue->value.obj.properties);
break;
case IS_RESOURCE:
/* destroy resource */
@@ -97,7 +97,7 @@ void zval_add_ref(zval **p)
-ZEND_API int zval_copy_ctor(zval *zvalue)
+ZEND_API int _zval_copy_ctor(zval *zvalue ZEND_FILE_LINE_DC)
{
switch (zvalue->type) {
case IS_RESOURCE:
@@ -153,6 +153,27 @@ ZEND_API int zend_print_variable(zval *var)
}
+#ifdef ZEND_DEBUG
+ZEND_API int _zval_copy_ctor_wrapper(zval *zvalue)
+{
+ return zval_copy_ctor(zvalue);
+}
+
+
+ZEND_API int _zval_dtor_wrapper(zval *zvalue)
+{
+ return zval_dtor(zvalue);
+}
+
+
+
+ZEND_API int _zval_ptr_dtor_wrapper(zval **zval_ptr)
+{
+ return zval_ptr_dtor(zval_ptr);
+}
+#endif
+
+
/*
* Local variables:
* tab-width: 4