X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=http_response_object.c;h=85fef4911e7fa8d7c47b598be21fcb539c99d4c0;hp=d85d36613485d0a66a7af8e2e077fd2494ec73b4;hb=e8608b78db949f6806ee47709aa6799affe69b9e;hpb=6cb8b71e819cbeef5bc5383a64452a36f56de17f diff --git a/http_response_object.c b/http_response_object.c index d85d366..85fef49 100644 --- a/http_response_object.c +++ b/http_response_object.c @@ -143,10 +143,6 @@ HTTP_EMPTY_ARGS(getRequestBody, 0); #define http_response_object_declare_default_properties() _http_response_object_declare_default_properties(TSRMLS_C) static inline void _http_response_object_declare_default_properties(TSRMLS_D); -#if BROKEN_STATICS -HashTable http_response_statics; -#endif - zend_class_entry *http_response_object_ce; zend_function_entry http_response_object_fe[] = { @@ -293,7 +289,7 @@ PHP_METHOD(HttpResponse, getHeader) array_init(return_value); array_copy(headers, return_value); } else if (SUCCESS == zend_hash_find(Z_ARRVAL_P(headers), name, name_len + 1, (void **) &header)) { - RETURN_ZVAL(*header, ZVAL_PTR_DTOR, 1); + RETURN_ZVAL(*header, 1, 0); } else { RETURN_NULL(); } @@ -776,19 +772,19 @@ PHP_METHOD(HttpResponse, send) /* capture mode */ if (Z_BVAL_P(GET_STATIC_PROP(catch))) { - zval the_data; + zval *the_data; - INIT_PZVAL(&the_data); - php_ob_get_buffer(&the_data TSRMLS_CC); - SET_STATIC_PROP(data, &the_data); + MAKE_STD_ZVAL(the_data); + php_ob_get_buffer(the_data TSRMLS_CC); + SET_STATIC_PROP(data, the_data); ZVAL_LONG(GET_STATIC_PROP(mode), SEND_DATA); if (!Z_STRLEN_P(GET_STATIC_PROP(eTag))) { - char *etag = http_etag(Z_STRVAL(the_data), Z_STRLEN(the_data), SEND_DATA); + char *etag = http_etag(Z_STRVAL_P(the_data), Z_STRLEN_P(the_data), SEND_DATA); UPD_STATIC_PROP(string, eTag, etag); efree(etag); } - zval_dtor(&the_data); + zval_ptr_dtor(&the_data); clean_ob = 1; } @@ -913,10 +909,6 @@ PHP_METHOD(HttpResponse, send) * HttpResponse::setCache(true); * HttpResponse::capture(); * // script follows - * // note that you need to call - * HttpResponse::send(); - * // at the end of the script unless - * // you use PHP-5.1 or greater * ?> * */ @@ -934,7 +926,7 @@ PHP_METHOD(HttpResponse, capture) php_end_ob_buffers(0 TSRMLS_CC); php_start_ob_buffer(NULL, 0, 0 TSRMLS_CC); -#if (PHP_MAJOR_VERSION > 5) || (PHP_MINOR_VERSION > 0) +#ifndef WONKY /* register shutdown function -- messing around with ob and headers only works in PHP-5.1 or greater */ { @@ -956,7 +948,7 @@ PHP_METHOD(HttpResponse, capture) } /* }}} */ -#endif /* ZEND_ENGINE_2 */ +#endif /* ZEND_ENGINE_2 && !WONKY */ /* * Local variables: