output buffers

This commit is contained in:
udo
2021-12-09 03:01:10 +00:00
parent 8195154e4c
commit af29d51536
19 changed files with 169 additions and 62 deletions
+21
View File
@@ -509,9 +509,30 @@ FastCGIServer::process_write_request(Connection& connection, RequestID id,
}
if ((request.in_closed || request.status != 0) &&
!request.output_closed) {
request.out =
var_dump(request.header, "", "\r\n") +
var_dump(request.set_cookies, "", "\r\n") +
"\r\n";
for(auto obs : request.ob_stack)
{
request.out += obs->str();
delete obs;
}
request.ob_stack.clear();
write_data(connection.output_buffer, id, request.out, FCGI_STDOUT);
write_data(connection.output_buffer, id, request.err, FCGI_STDERR);
request.time_end = microtime();
printf("(r) pid:%i\t%s\t%0.6fs\t%0.1fkB\n",
my_pid,
request.params["REQUEST_URI"].c_str(),
request.time_end - request.time_start,
(f32)(request.out.length()/1024)
);
FCGI_EndRequestRecord complete;
bzero(&complete, sizeof(complete));
complete.header.version = FCGI_VERSION_1;