Bug 228853 - ASSERTION FAILED: !m_networkLoad in NetworkResourceLoader::~NetworkResourceLoader()
Summary: ASSERTION FAILED: !m_networkLoad in NetworkResourceLoader::~NetworkResourceLo...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Fujii Hironori
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-08-05 18:46 PDT by Fujii Hironori
Modified: 2021-08-06 15:19 PDT (History)
5 users (show)

See Also:


Attachments
test patch (927 bytes, patch)
2021-08-05 18:46 PDT, Fujii Hironori
no flags Details | Formatted Diff | Diff
response-clone-blob-crash-log.txt (84.62 KB, text/plain)
2021-08-05 18:46 PDT, Fujii Hironori
no flags Details
Patch (3.53 KB, patch)
2021-08-05 20:37 PDT, Fujii Hironori
no flags Details | Formatted Diff | Diff
Patch (3.61 KB, patch)
2021-08-06 13:51 PDT, Fujii Hironori
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Fujii Hironori 2021-08-05 18:46:34 PDT
Created attachment 435046 [details]
test patch

ASSERTION FAILED: !m_networkLoad in NetworkResourceLoader::~NetworkResourceLoader()

1. Applying the test patch
2. Compile Mac Debug
   Tools/Scripts/build-webkit --debug
3. Run layout tests
   ./Tools/Scripts/run-webkit-tests --debug --no-build http/tests/fetch
4. The assertion fails in the next test case of http/tests/fetch/keepalive-fetch.html

ASSERTION FAILED: !m_networkLoad
/Volumes/Data/webkit/ga/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp(137) : virtual WebKit::NetworkResourceLoader::~NetworkResourceLoader()
Comment 1 Fujii Hironori 2021-08-05 18:46:52 PDT
Created attachment 435047 [details]
response-clone-blob-crash-log.txt
Comment 2 Fujii Hironori 2021-08-05 19:08:54 PDT
MiniBrowser also can reproduce the assertion failure.

1. Applying the test patch
2. Start the test server
  ./Tools/Scripts/run-webkit-httpd
3. Start Mac Debug MiniBrowser
4. Select File → New WebKit2 Private Window
5. Go to http://127.0.0.1:8000/fetch/keepalive-fetch.html
6. Close the Private Window
7. The assertion fails
Comment 3 Fujii Hironori 2021-08-05 20:37:50 PDT
Created attachment 435052 [details]
Patch
Comment 4 Alex Christensen 2021-08-06 11:10:02 PDT
Comment on attachment 435052 [details]
Patch

I think it would be better for the destructor of NetworkSession or something to call NetworkResourceLoader::cleanup on the kept alive loaders
Comment 5 Fujii Hironori 2021-08-06 13:29:47 PDT
It sounds a good idea. Will try. Thank you.
Comment 6 Fujii Hironori 2021-08-06 13:51:18 PDT
Created attachment 435084 [details]
Patch
Comment 7 EWS 2021-08-06 15:18:56 PDT
Committed r280740 (240326@main): <https://commits.webkit.org/240326@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 435084 [details].
Comment 8 Radar WebKit Bug Importer 2021-08-06 15:19:17 PDT
<rdar://problem/81634917>