Currently 2.4.x fails to compile for me with the following error:
In file included from h2_c1_io.c:24:
h2_c1_io.c: In function ‘pass_output’:
/usr/src/apache/httpd-2.4.x/include/http_log.h:495:14: warning: ‘rv’ may be
used uninitialized in this function
[-Wmaybe-uninitialized]
ap_log_cerror_(file, line, mi, level, status, c, __VA_ARGS__); \
^~~~~~~~~~~~~~
h2_c1_io.c:264:18: note: ‘rv’ was declared here
apr_status_t rv;
^~
The following patch fixes this. It is part of r1910507 which is not backported
yet.
Index: modules/http2/h2_c1_io.c
===================================================================
--- modules/http2/h2_c1_io.c (revision 1911839)
+++ modules/http2/h2_c1_io.c (working copy)
@@ -267,7 +267,7 @@
/* recursive call, may be triggered by an H2EOS bucket
* being destroyed and triggering sending more data? */
AP_DEBUG_ASSERT(0);
- ap_log_cerror(APLOG_MARK, APLOG_ERR, rv, c, APLOGNO(10456)
+ ap_log_cerror(APLOG_MARK, APLOG_ERR, 0, c, APLOGNO(10456)
"h2_c1_io(%ld): recursive call of h2_c1_io_pass. "
"Denied to prevent output corruption. This "
"points to a bug in the HTTP/2 implementation.",
Not sure how we proceed best from here. If we commit it to 2.4.x (after
appropriate voting of course) it would break the current
backport proposal. But as the backport proposal is a PR it might be easy to
take out this small part of the proposal.
Regards
Rüdiger