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>
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.
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.
Created attachment 86726 [details] updated patch Oops, lost the condition rewrite somehow.
Comment on attachment 86726 [details] updated patch r=me
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.
Committed <http://trac.webkit.org/changeset/81831>
Attachment 86726 [details] did not build on qt: Build output: http://queues.webkit.org/results/8236098
Typo fix in <http://trac.webkit.org/changeset/81832>.