aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/php/ext/grpc/php7_wrapper.h
diff options
context:
space:
mode:
authorGravatar Yuchen Zeng <zyc@google.com>2017-01-18 18:49:07 -0800
committerGravatar Yuchen Zeng <zyc@google.com>2017-01-18 18:49:07 -0800
commit04ec4701e303b8b41d90d5ce6861689c7f0fab7f (patch)
treeb37a55fead11bb07956718671aa1b1ed1bbb3991 /src/php/ext/grpc/php7_wrapper.h
parentb0023d25dc783ba77164c03a39bb7dcc7e446fe8 (diff)
parent6da1dc87aa3384594e9ab6218b1e0886573108de (diff)
Merge remote-tracking branch 'upstream/master' into cares_buildin
Diffstat (limited to 'src/php/ext/grpc/php7_wrapper.h')
-rw-r--r--src/php/ext/grpc/php7_wrapper.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/php/ext/grpc/php7_wrapper.h b/src/php/ext/grpc/php7_wrapper.h
index 1d7824113f..72e982d6fc 100644
--- a/src/php/ext/grpc/php7_wrapper.h
+++ b/src/php/ext/grpc/php7_wrapper.h
@@ -50,8 +50,13 @@
#define PHP_GRPC_RETURN_STRING(val, dup) RETURN_STRING(val, dup)
#define PHP_GRPC_MAKE_STD_ZVAL(pzv) MAKE_STD_ZVAL(pzv)
+#define PHP_GRPC_FREE_STD_ZVAL(pzv)
#define PHP_GRPC_DELREF(zv) Z_DELREF_P(zv)
+#define RETURN_DESTROY_ZVAL(val) \
+ RETURN_ZVAL(val, false /* Don't execute copy constructor */, \
+ true /* Dealloc original before returning */)
+
#define PHP_GRPC_WRAP_OBJECT_START(name) \
typedef struct name { \
zend_object std;
@@ -144,8 +149,15 @@ static inline int php_grpc_zend_hash_find(HashTable *ht, char *key, int len,
#define PHP_GRPC_RETURN_STRING(val, dup) RETURN_STRING(val)
#define PHP_GRPC_MAKE_STD_ZVAL(pzv) \
pzv = (zval *)emalloc(sizeof(zval));
+#define PHP_GRPC_FREE_STD_ZVAL(pzv) efree(pzv);
#define PHP_GRPC_DELREF(zv)
+#define RETURN_DESTROY_ZVAL(val) \
+ RETVAL_ZVAL(val, false /* Don't execute copy constructor */, \
+ true /* Dealloc original before returning */); \
+ efree(val); \
+ return
+
#define PHP_GRPC_WRAP_OBJECT_START(name) \
typedef struct name {
#define PHP_GRPC_WRAP_OBJECT_END(name) \