diff --git a/ChangeLog b/ChangeLog index 51d0b965..12dc69f1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,9 @@ Tue Nov 3 23:24:52 CET 2015 Undoing change from Sun Oct 25 15:29:23 CET 2015 as the original code was counter-intuitive but - correct, and the new code does break pipelining. -CG + correct, and the new code does break pipelining. + Ignore empty lines at the beginning of an HTTP + request (more tolerant implementation). -CG Releasing libmicrohttpd 0.9.45. -CG Sat Oct 31 15:52:52 CET 2015 diff --git a/src/microhttpd/connection.c b/src/microhttpd/connection.c index cf2ebdd0..6ec51383 100644 --- a/src/microhttpd/connection.c +++ b/src/microhttpd/connection.c @@ -2227,7 +2227,11 @@ MHD_connection_handle_idle (struct MHD_Connection *connection) { case MHD_CONNECTION_INIT: line = get_next_header_line (connection); - if (NULL == line) + /* Check for empty string, as we might want + to tolerate 'spurious' empty lines; also + NULL means we didn't get a full line yet. */ + if ( (NULL == line) || + (0 == strlen (line) ) ) { if (MHD_CONNECTION_INIT != connection->state) continue;