HTTP leaks on error after continuation
If an initial HTTP response is received, but the next/final response is not received, the connection is leaked, e.g.:
Direct leak of 48 byte(s) in 1 object(s) allocated from:
[#0](https://code.videolan.org/videolan/vlc/-/issues/0) 0x7f52f8bdbe8f in malloc (/usr/lib/x86_64-linux-gnu/libasan.so.6+0xa9e8f)
[#1](https://code.videolan.org/videolan/vlc/-/issues/1) 0x7f52def6f4ec in vlc_h1_conn_create ../../modules/access/http/h1conn.c:348
[#2](https://code.videolan.org/videolan/vlc/-/issues/2) 0x7f52def6fccb in vlc_h1_request ../../modules/access/http/h1conn.c:394
[#3](https://code.videolan.org/videolan/vlc/-/issues/3) 0x7f52def75353 in vlc_http_request ../../modules/access/http/connmgr.c:253
[#4](https://code.videolan.org/videolan/vlc/-/issues/4) 0x7f52def756ad in vlc_http_mgr_request ../../modules/access/http/connmgr.c:281
[#5](https://code.videolan.org/videolan/vlc/-/issues/5) 0x7f52def52631 in vlc_http_outfile_create ../../modules/access/http/outfile.c:80
[#6](https://code.videolan.org/videolan/vlc/-/issues/6) 0x7f52def40556 in Open ../../modules/access_output/http-put.c:94
[#7](https://code.videolan.org/videolan/vlc/-/issues/7) 0x7f52f71cd212 in generic_start ../../src/modules/modules.c:275
[#8](https://code.videolan.org/videolan/vlc/-/issues/8) 0x7f52f71ccdfa in vlc_module_load ../../src/modules/modules.c:243
[#9](https://code.videolan.org/videolan/vlc/-/issues/9) 0x7f52f71cd35a in module_need ../../src/modules/modules.c:286
[#10](https://code.videolan.org/videolan/vlc/-/issues/10) 0x7f52f754fce2 in sout_AccessOutNew ../../src/stream_output/stream_output.c:313
[#11](https://code.videolan.org/videolan/vlc/-/issues/11) 0x7f52df01839d in Open ../../modules/stream_out/standard.c:370
[#12](https://code.videolan.org/videolan/vlc/-/issues/12) 0x7f52f71cd212 in generic_start ../../src/modules/modules.c:275
[#13](https://code.videolan.org/videolan/vlc/-/issues/13) 0x7f52f71ccdfa in vlc_module_load ../../src/modules/modules.c:243
[#14](https://code.videolan.org/videolan/vlc/-/issues/14) 0x7f52f71cd35a in module_need ../../src/modules/modules.c:286
[#15](https://code.videolan.org/videolan/vlc/-/issues/15) 0x7f52f7556060 in sout_StreamNew ../../src/stream_output/stream_output.c:821
[#16](https://code.videolan.org/videolan/vlc/-/issues/16) 0x7f52f755694d in sout_StreamChainNew ../../src/stream_output/stream_output.c:883
[#17](https://code.videolan.org/videolan/vlc/-/issues/17) 0x7f52f754da00 in sout_NewInstance ../../src/stream_output/stream_output.c:119
[#18](https://code.videolan.org/videolan/vlc/-/issues/18) 0x7f52f737b7be in RequestSout ../../src/input/resource.c:176
[#19](https://code.videolan.org/videolan/vlc/-/issues/19) 0x7f52f7380a88 in input_resource_RequestSout ../../src/input/resource.c:628
[#20](https://code.videolan.org/videolan/vlc/-/issues/20) 0x7f52f72f4eb7 in InitSout ../../src/input/input.c:811
[#21](https://code.videolan.org/videolan/vlc/-/issues/21) 0x7f52f72fbf11 in Init ../../src/input/input.c:1265
[#22](https://code.videolan.org/videolan/vlc/-/issues/22) 0x7f52f72f0cc9 in Run ../../src/input/input.c:469
[#23](https://code.videolan.org/videolan/vlc/-/issues/23) 0x7f52f8076ea6 in start_thread nptl/pthread_create.c:477
-----------------------------------------------------
Suppressions used:
count bytes template
1 4 pa_xmalloc0
-----------------------------------------------------
SUMMARY: AddressSanitizer: 48 byte(s) leaked in 1 allocation(s).
(This is easier to reproduce with HTTP PUT, as it's far more normal to have a continuation with it, than with HTTP GET.)
Edited by Rémi Denis-Courmont