Here is the short list of things that I think we should consider doing: 1. Ensure that viaduct sends a lowercase content-length. 2. Assert that content-length is present and lowercase, probably only in debug builds, because that might be a little too expensive to ship. 3. Run a try build to see if those assertions flush out any other cases where this is being set directly. More investigation might be required there. 4. Along with [this assertion](https://searchfox.org/mozilla-central/rev/435a77f1a1aaf1a78d30a2aaa81c6158a2f83dba/netwerk/protocol/http/Http3Stream.cpp#273), set `rv` to something other than NS_OK. Having this function return OK when it was not is how we got into the infinite loop.
Bug 1749957 Comment 10 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Here is the short list of things that I think we should consider doing: 1. Take emilio's patch. 2. Assert that content-length is present and in the expected casing, probably only in debug builds, because that might be a little too expensive to ship. 3. Run a try build to see if those assertions flush out any other cases where this is being set directly. More investigation might be required there. 4. Along with [this assertion](https://searchfox.org/mozilla-central/rev/435a77f1a1aaf1a78d30a2aaa81c6158a2f83dba/netwerk/protocol/http/Http3Stream.cpp#273), set `rv` to something other than NS_OK. Having this function return OK when it was not is how we got into the infinite loop. (Updated to correct some mistakes)