return FAILURE;
}
+#if PHP_VERSION_ID < 50399
if (!OG(ob_lock)) {
php_end_ob_buffers(0 TSRMLS_CC);
}
+#else
+ if (php_output_get_status(TSRMLS_C) & PHP_OUTPUT_LOCKED) {
+ php_output_end_all(TSRMLS_C);
+ }
+#endif
if ((SUCCESS == sapi_send_headers(TSRMLS_C)) && body) {
PHPWRITE(body, strlen(body));
}
}
return SUCCESS;
} else if (sapi_module.read_post && !HTTP_G->read_post_data) {
- char buf[4096];
+ char *buf = emalloc(4096);
int len;
HTTP_G->read_post_data = 1;
- while (0 < (len = sapi_module.read_post(buf, sizeof(buf) TSRMLS_CC))) {
+ while (0 < (len = sapi_module.read_post(buf, 4096 TSRMLS_CC))) {
*body = erealloc(*body, *length + len + 1);
memcpy(*body + *length, buf, len);
*length += len;
break;
}
}
+ efree(buf);
/* check for error */
if (len < 0) {
HTTP_G->read_post_data = 1;
if ((s = php_stream_temp_new())) {
- char buf[4096];
+ char *buf = emalloc(4096);
int len;
- while (0 < (len = sapi_module.read_post(buf, sizeof(buf) TSRMLS_CC))) {
+ while (0 < (len = sapi_module.read_post(buf, 4096 TSRMLS_CC))) {
php_stream_write(s, buf, len);
if (len < (int) sizeof(buf)) {
break;
}
}
+ efree(buf);
if (len < 0) {
php_stream_close(s);