summaryrefslogtreecommitdiff
path: root/Zend/zend_API.h
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>1999-12-26 21:21:33 +0000
committerZeev Suraski <zeev@php.net>1999-12-26 21:21:33 +0000
commit235386b24569eb5d41baffa88151550ba04992ce (patch)
tree0db42a31df098a289a813527b823098d41bd5312 /Zend/zend_API.h
parentc517633b4963b684fd9f43704a72bcbbe4d30bf2 (diff)
downloadphp-git-235386b24569eb5d41baffa88151550ba04992ce.tar.gz
Change ALLOC_ZVAL() semantics
Diffstat (limited to 'Zend/zend_API.h')
-rw-r--r--Zend/zend_API.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/Zend/zend_API.h b/Zend/zend_API.h
index 701a95d900..070bb09fcc 100644
--- a/Zend/zend_API.h
+++ b/Zend/zend_API.h
@@ -212,9 +212,10 @@ ZEND_API int zend_set_hash_symbol(zval *symbol, char *name, int name_length,
#define SET_VAR_STRING(n,v) { \
{ \
- zval *var = ALLOC_ZVAL(); \
+ zval *var; \
char *str=(v); /* prevent 'v' from being evaluated more than once */ \
\
+ ALLOC_ZVAL(var); \
var->value.str.val = (str); \
var->value.str.len = strlen((str)); \
var->type = IS_STRING; \
@@ -224,8 +225,9 @@ ZEND_API int zend_set_hash_symbol(zval *symbol, char *name, int name_length,
#define SET_VAR_STRINGL(n,v,l) { \
{ \
- zval *var = ALLOC_ZVAL(); \
+ zval *var; \
\
+ ALLOC_ZVAL(var); \
var->value.str.val = (v); \
var->value.str.len = (l); \
var->type = IS_STRING; \
@@ -235,8 +237,9 @@ ZEND_API int zend_set_hash_symbol(zval *symbol, char *name, int name_length,
#define SET_VAR_LONG(n,v) { \
{ \
- zval *var = ALLOC_ZVAL(); \
+ zval *var; \
\
+ ALLOC_ZVAL(var); \
var->value.lval = (v); \
var->type = IS_LONG; \
ZEND_SET_GLOBAL_VAR(n, var); \
@@ -245,8 +248,9 @@ ZEND_API int zend_set_hash_symbol(zval *symbol, char *name, int name_length,
#define SET_VAR_DOUBLE(n,v) { \
{ \
- zval *var = ALLOC_ZVAL(); \
+ zval *var; \
\
+ ALLOC_ZVAL(var); \
var->value.dval = (v); \
var->type = IS_DOUBLE; \
ZEND_SET_GLOBAL_VAR(n, var); \