#define RETURN_SUCCESS(v) RETURN_BOOL(SUCCESS == (v))
/* return object(values) */
#define RETVAL_OBJECT(o) \
- return_value->is_ref = 1; \
- return_value->type = IS_OBJECT; \
- return_value->value.obj = (o)->value.obj; \
- zval_add_ref(&return_value)
+ RETVAL_OBJVAL((o)->value.obj)
#define RETURN_OBJECT(o) \
RETVAL_OBJECT(o); \
return
return_value->is_ref = 1; \
return_value->type = IS_OBJECT; \
return_value->value.obj = (ov); \
+ zval_add_ref(&return_value); \
zend_objects_store_add_ref(return_value TSRMLS_CC)
#define RETURN_OBJVAL(ov) \
RETVAL_OBJVAL(ov); \
ZEND_ARG_PASS_INFO(0) \
ZEND_ARG_PASS_INFO(0) \
ZEND_ARG_PASS_INFO(1) \
+ ZEND_END_ARG_INFO(); \
+ \
+ static \
+ ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_all, 1) \
+ ZEND_ARG_PASS_INFO(1) \
ZEND_END_ARG_INFO()
# else
# define HTTP_DECLARE_ARG_PASS_INFO() \
static unsigned char http_arg_pass_ref_3[] = {3, BYREF_NONE, BYREF_NONE, BYREF_FORCE}; \
static unsigned char http_arg_pass_ref_4[] = {4, BYREF_NONE, BYREF_NONE, BYREF_NONE, BYREF_FORCE}; \
- static unsigned char http_arg_pass_ref_5[] = {5, BYREF_NONE, BYREF_NONE, BYREF_NONE, BYREF_NONE, BYREF_FORCE}
+ static unsigned char http_arg_pass_ref_5[] = {5, BYREF_NONE, BYREF_NONE, BYREF_NONE, BYREF_NONE, BYREF_FORCE}; \
+ static unsigned char http_arg_pass_ref_all[]={1, BYREF_FORCE_REST}
# endif /* ZEND_ENGINE_2 */
#else
# define HTTP_DECLARE_ARG_PASS_INFO()
#endif /* HTTP_HAVE_CURL */
+#ifndef TSRMLS_FETCH_FROM_CTX
+# ifdef ZTS
+# define TSRMLS_FETCH_FROM_CTX(ctx) void ***tsrm_ls = (void ***) ctx
+# else
+# define TSRMLS_FETCH_FROM_CTX(ctx)
+# endif
+#endif
+
+#ifndef TSRMLS_SET_CTX
+# ifdef ZTS
+# define TSRMLS_SET_CTX(ctx) (void ***) ctx = tsrm_ls
+# else
+# define TSRMLS_SET_CTX(ctx)
+# endif
+#endif
+
+
+
#endif /* PHP_HTTP_STD_DEFS_H */
/*