X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=missing.h;h=a9da727fce1439065c735c2bde725c4ac2a34501;hp=fa3eda8b4b09dfdc1a1d9aa44ed02c7b245970dd;hb=b37be57f73de02b4bfe632223af12098b9dc7e6f;hpb=39cc1a2cc407bc6ca89829cffd1bfafd463720ca diff --git a/missing.h b/missing.h index fa3eda8..a9da727 100644 --- a/missing.h +++ b/missing.h @@ -24,6 +24,7 @@ # define GLOBAL_ERROR_HANDLING EG(error_handling) # define GLOBAL_EXCEPTION_CLASS EG(exception_class) # define IS_CALLABLE(cb_zv, flags, cb_sp) zend_is_callable((cb_zv), (flags), (cb_sp) TSRMLS_CC) +# define HTTP_STATIC_ARG_INFO #else # define HTTP_ZAPI_HASH_TSRMLS_CC # define HTTP_ZAPI_HASH_TSRMLS_DC @@ -31,6 +32,7 @@ # define GLOBAL_ERROR_HANDLING PG(error_handling) # define GLOBAL_EXCEPTION_CLASS PG(exception_class) # define IS_CALLABLE(cb_zv, flags, cb_sp) zend_is_callable((cb_zv), (flags), (cb_sp)) +# define HTTP_STATIC_ARG_INFO static #endif #if (PHP_MAJOR_VERSION == 5) && (PHP_MINOR_VERSION == 0) @@ -69,6 +71,19 @@ # define ZVAL_ADDREF Z_ADDREF_P #endif +#ifndef SEPARATE_ARG_IF_REF +#define SEPARATE_ARG_IF_REF(zv) \ + if (PZVAL_IS_REF(zv)) { \ + zval *ov = zv; \ + ALLOC_INIT_ZVAL(zv); \ + Z_TYPE_P(zv) = Z_TYPE_P(ov); \ + zv->value = ov->value; \ + zval_copy_ctor(zv); \ + } else { \ + ZVAL_ADDREF(zv); \ + } +#endif + #ifndef ZVAL_ZVAL #define ZVAL_ZVAL(z, zv, copy, dtor) { \ int is_ref, refcount; \