On Tue, Jan 3, 2017 at 11:04 AM, William A Rowe Jr <[email protected]> wrote: > On Tue, Jan 3, 2017 at 9:55 AM, Eric Covener <[email protected]> wrote: >> I am not completely following how the branch or patch were assembled, >> but I am seeing a failure that is missing content from the initial >> trunk work (1426877) >> that was also in the initial 2.4.x backport (1772678). >> >> It is causing frequent crashes on EOF of a keepalive conn for me >> >> The missing bit that sticks out/causes the crash is server/protocol.c >> ap_read_request(): >> >> 1276 default: >> 1277 apr_brigade_destroy(tmp_bb); >> 1278 r = NULL; >> ^^^^^^^^^ missing >> 1279 return r; >> 1280 } >> 1281 } >> 1282 >> >> Bill do you recall if there was perhaps a hand-resolved merge conflict >> in this area? > > That makes perfect sense due to the s/goto traceout/return r/ conflicts, > none of the patch applied in that section, and I simply missed this line. > The traceout change wasn't merged since 2.2 has no support for that > loglevel. > > Feel free to patch on the merge branch, or I will fix this myself this > afternoon.
Looking more closely at this code, the four essential errors all return NULL, and default: should have returned NULL, which leaves me wondering why HTTP_REQUEST_TIMEOUT returns the request_rec when no other error cases do so?
