Error IHttpResponse may leak
Describe your environment. Describe any aspect of your environment relevant to the problem, including your SDK version, platform, OS version, etc. If you're reporting a problem with a specific version of a library in this repo, please check whether the problem has been fixed on master.
Found in SDK version 3.3.64.1 and still reproducible in latest master on 8/24/2020 at commit be5fee3b. Found on Linux (where we implement IHttpClient and we perform leak testing inherit from upstream Chromium).
Steps to reproduce. Describe exactly how to reproduce the error. Include a code sample if applicable.
Create IHttpResponse object with an error HttpResult (HttpResult_Aborted, HttpResult_LocalFailure or HttpResult_NetworkFailure) and make a IHttpResponseCallback.OnHttpResponse callback with it. Not repro when the result is HttpResult_OK.
What is the expected behavior? What did you expect to see?
Both OK and NetworkFailure cases pass memory sanitizer leak tests.
What is the actual behavior? What did you see instead?
OK result case passed and NetworkFailure case failed the test.
Direct leak of 112 byte(s) in 1 object(s) allocated from:
#0 0x562fff40763d in operator new(unsigned long) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cpp:99:3
#1 0x7f0c6539e59c in make_unique<Microsoft::Applications::Events::SimpleHttpResponse, std::__1::basic_string<char> > buildtools/third_party/libc++/trunk/include/memory:3043:28
#2 0x7f0c6539e59c in FromHttpResponse third_party/data_client/src/edge_http_client.cc:66:24
SUMMARY: AddressSanitizer: 112 byte(s) leaked in 1 allocation(s).
Additional context. Add any other context about the problem here.
Edge Bug 28667406: HttpUploaderTest.OnUploadFailureTest failure in Linux_x64_release_asan
Reduced repro: main.cc
This hasn't been a priority for at least a year. Please take a look if it's still an issue. I'm removing myself from assignment, as I'd be refocusing on other project. @HIROSN @jberenhaus