RESOLVED FIXED 56978
REGRESSION: Infinite recursion in recursiveCheckLoadComplete()/checkLoadCompleteForThisFrame()/stopLoading()
https://bugs.webkit.org/show_bug.cgi?id=56978
Summary REGRESSION: Infinite recursion in recursiveCheckLoadComplete()/checkLoadCompl...
Alexey Proskuryakov
Reported 2011-03-23 17:24:37 PDT
There are many crashes reported in WebKit2 with the following repetitive part: FrameLoader::recursiveCheckLoadComplete() FrameLoader::checkLoadComplete() FrameLoader::mainReceivedCompleteError() DocumentLoader::mainReceivedError() DocumentLoader::stopLoading() FrameLoader::checkLoadCompleteForThisFrame() /* provisional state */ Unfortunately, there are no steps to reproduce. <rdar://problem/9041670>
Attachments
proposed fix (2.27 KB, patch)
2011-03-23 17:35 PDT, Alexey Proskuryakov
no flags
updated patch (2.63 KB, patch)
2011-03-23 17:43 PDT, Alexey Proskuryakov
mjs: review+
Alexey Proskuryakov
Comment 1 2011-03-23 17:29:06 PDT
Our best guess is that this is caused by the way plug-in loads are stopped - there are asynchronous messages sent, so DocumentLoader keeps thinking that it has plug-in loads unless it receives an IPC response, which it doesn't. But I couldn't make a test.
Alexey Proskuryakov
Comment 2 2011-03-23 17:35:11 PDT
Created attachment 86725 [details] proposed fix This passes regression tests. It's difficult to confidently say that there are no leaks, because loader and http regression tests leak a lot already.
Alexey Proskuryakov
Comment 3 2011-03-23 17:43:19 PDT
Created attachment 86726 [details] updated patch Oops, lost the condition rewrite somehow.
Maciej Stachowiak
Comment 4 2011-03-23 17:44:27 PDT
Comment on attachment 86726 [details] updated patch r=me
WebKit Review Bot
Comment 5 2011-03-23 17:44:57 PDT
Attachment 86726 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCor..." exit_code: 1 Source/WebCore/loader/FrameLoader.cpp:2401: More than one command on the same line in if [whitespace/parens] [4] Total errors found: 1 in 2 files If any of these errors are false positives, please file a bug against check-webkit-style.
Alexey Proskuryakov
Comment 6 2011-03-23 17:49:19 PDT
Early Warning System Bot
Comment 7 2011-03-23 17:51:11 PDT
Alexey Proskuryakov
Comment 8 2011-03-23 17:51:20 PDT
Note You need to log in before you can comment on or make changes to this bug.