X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=http_response_object.c;h=c8d45cca997de2f9327f51a0f78ec5681b4678cb;hp=cfa509566fcd7141c166b2500f517f50d2c104e2;hb=refs%2Fheads%2Fv1.7.x;hpb=a197d80241b36d6f5581feeb80bea60a59fdbd02 diff --git a/http_response_object.c b/http_response_object.c index cfa5095..c8d45cc 100644 --- a/http_response_object.c +++ b/http_response_object.c @@ -745,7 +745,11 @@ PHP_METHOD(HttpResponse, send) zval *zetag, *the_data; MAKE_STD_ZVAL(the_data); +#ifdef PHP_OUTPUT_NEWAPI + php_output_get_contents(the_data TSRMLS_CC); +#else php_ob_get_buffer(the_data TSRMLS_CC); +#endif zend_update_static_property(THIS_CE, ZEND_STRS("data")-1, the_data TSRMLS_CC); ZVAL_LONG(*zend_std_get_static_property(THIS_CE, ZEND_STRS("mode")-1, 0 ZEND_LITERAL_NIL_CC TSRMLS_CC), SEND_DATA); @@ -767,7 +771,11 @@ PHP_METHOD(HttpResponse, send) /* interrupt on-the-fly etag generation */ HTTP_G->etag.started = 0; /* discard previous output buffers */ +#ifdef PHP_OUTPUT_NEWAPI + php_output_discard_all(TSRMLS_C); +#else php_end_ob_buffers(0 TSRMLS_CC); +#endif } /* caching */ @@ -879,9 +887,13 @@ PHP_METHOD(HttpResponse, capture) HTTP_CHECK_HEADERS_SENT(RETURN_FALSE); zend_update_static_property_long(THIS_CE, ZEND_STRS("catch")-1, 1 TSRMLS_CC); - +#ifdef PHP_OUTPUT_NEWAPI + php_output_discard_all(TSRMLS_C); + php_output_start_default(TSRMLS_C); +#else php_end_ob_buffers(0 TSRMLS_CC); php_start_ob_buffer(NULL, 0, 0 TSRMLS_CC); +#endif /* register shutdown function */ {