a6bbcbe430e3807d699ce2cbdb2ab7fb1b5e5727
[feed/packages.git] / net / lighttpd / patches / 0001-mod_cgi-fix-CGI-local-redir-w-url.rewrite-once-fixes.patch
1 From: Glenn Strauss <gstrauss@gluelogic.com>
2 Subject: [PATCH] [mod_cgi] fix CGI local-redir w/ url.rewrite-once (fixes
3 #2793)
4
5 x-ref:
6 "1.4.40 regression: broken redirect (using Location) between url.rewrite-once URLs"
7 https://redmine.lighttpd.net/issues/2793
8 ---
9 src/mod_cgi.c | 5 ++---
10 1 file changed, 2 insertions(+), 3 deletions(-)
11
12 --- a/src/mod_cgi.c
13 +++ b/src/mod_cgi.c
14 @@ -560,8 +560,7 @@ static int cgi_demux_response(server *sr
15 }
16
17 connection_response_reset(srv, con); /*(includes con->http_status = 0)*/
18 -
19 - con->mode = DIRECT;
20 + plugins_call_connection_reset(srv, con);
21 return FDEVENT_HANDLED_COMEBACK;
22 }
23 }
24 @@ -780,7 +779,7 @@ static int cgi_recv_response(server *srv
25 /* if we get a IN|HUP and have read everything don't exec the close twice */
26 return HANDLER_FINISHED;
27 case FDEVENT_HANDLED_COMEBACK:
28 - cgi_connection_close(srv, hctx);
29 + /*cgi_connection_close(srv, hctx);*//*(already cleaned up and hctx is now invalid)*/
30 return HANDLER_COMEBACK;
31 case FDEVENT_HANDLED_ERROR:
32 log_error_write(srv, __FILE__, __LINE__, "s", "demuxer failed: ");