X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_std_defs.h;h=bcd91acd3ad752ca86930cfe80ffb7a6450004f3;hp=8bef4f88e7a3aa390621e103c53d6106aad2dfbc;hb=0ef9c0b48c3ef484004231878a6c8c1e9c33a2b3;hpb=0d925a2820b9d75b8e32c451fd400863e51e22fe diff --git a/php_http_std_defs.h b/php_http_std_defs.h index 8bef4f8..bcd91ac 100644 --- a/php_http_std_defs.h +++ b/php_http_std_defs.h @@ -62,13 +62,17 @@ typedef int STATUS; RETVAL_OBJECT(o); \ return #define RETVAL_OBJVAL(ov) \ - return_value->is_ref = 1; \ - return_value->type = IS_OBJECT; \ - return_value->value.obj = (ov); \ - zend_objects_store_add_ref(return_value TSRMLS_CC) + ZVAL_OBJVAL(return_value, ov) #define RETURN_OBJVAL(ov) \ RETVAL_OBJVAL(ov); \ return +#define ZVAL_OBJVAL(zv, ov) \ + (zv)->is_ref = 1; \ + (zv)->type = IS_OBJECT; \ + (zv)->value.obj = (ov); \ + if (Z_OBJ_HT_P(zv)->add_ref) { \ + Z_OBJ_HT_P(zv)->add_ref((zv) TSRMLS_CC); \ + } /* function accepts no args */ #define NO_ARGS \