UNCONFIRMED 117933
Crash in ASSERTION FAILED: !m_resource->errorOccurred() when loading mhtml archive file
https://bugs.webkit.org/show_bug.cgi?id=117933
Summary Crash in ASSERTION FAILED: !m_resource->errorOccurred() when loading mhtml ar...
Santosh Mahto
Reported 2013-06-24 06:14:49 PDT
Program received signal SIGSEGV, Segmentation fault. 0xb737aa76 in WTFCrash () at /home/test/open_source/wk3/WebKit/WebKit/Source/WTF/wtf/Assertions.cpp:339 339 *(int *)(uintptr_t)0xbbadbeef = 0; (gdb) bt #0 0xb737aa76 in WTFCrash () at /home/test/open_source/wk3/WebKit/WebKit/Source/WTF/wtf/Assertions.cpp:339 #1 0xb30da837 in WebCore::SubresourceLoader::didFinishLoading (this=0x9b4fc80, finishTime=0) at /home/test/open_source/wk3/WebKit/WebKit/Source/WebCore/loader/SubresourceLoader.cpp:269 #2 0xb30913b4 in WebCore::DocumentLoader::substituteResourceDeliveryTimerFired (this=0x9b3d610) at /home/test/open_source/wk3/WebKit/WebKit/Source/WebCore/loader/DocumentLoader.cpp:1120 #3 0xb309c3c0 in WebCore::Timer<WebCore::DocumentLoader>::fired (this=0x9b3db6c) at /home/test/open_source/wk3/WebKit/WebKit/Source/WebCore/platform/Timer.h:113 #4 0xb325c61b in WebCore::ThreadTimers::sharedTimerFiredInternal (this=0x91e6738) at /home/test/open_source/wk3/WebKit/WebKit/Source/WebCore/platform/ThreadTimers.cpp:129 #5 0xb325c533 in WebCore::ThreadTimers::sharedTimerFired () at /home/test/open_source/wk3/WebKit/WebKit/Source/WebCore/platform/ThreadTimers.cpp:105 #6 0xb3e0b027 in WebCore::timerEvent () at /home/test/open_source/wk3/WebKit/WebKit/Source/WebCore/platform/efl/SharedTimerEfl.cpp:52 The crash is happening because in funtion when The cachedImage decoding fails it still calls didFinishLoading DocumentLoader::substituteResourceDeliveryTimerFired(WebCo { loader->didReceiveData(data->data(), data->size(), data->size(), DataPayloadWholeResource)--> can DecodeFail ...... ....... loader->didFinishLoading(0); ---> calling this without checking for errorOccured() }
Attachments
Patch (1.51 KB, patch)
2013-06-24 06:24 PDT, Santosh Mahto
no flags
Crash on Load test case (603.08 KB, application/octet-stream)
2013-07-09 10:11 PDT, Santosh Mahto
no flags
Patch (3.11 KB, patch)
2013-07-15 03:08 PDT, Santosh Mahto
no flags
Santosh Mahto
Comment 1 2013-06-24 06:24:27 PDT
Alexey Proskuryakov
Comment 2 2013-06-24 15:47:35 PDT
Is this covered by regression tests? Which tests asserts?
Chris Dumez
Comment 3 2013-06-25 03:23:47 PDT
Comment on attachment 205291 [details] Patch WebCore fixes should have a layout test.
Santosh Mahto
Comment 4 2013-07-09 10:11:03 PDT
Created attachment 206335 [details] Crash on Load test case ( I checked in efl port) step to reproduce crash: 1. load attached .mht file OR 1. ctrl + s(save) http://m.news.nate.com/photoSlide/view?clstId=434328&section=sisa and load the saved mht file. Attached mht is just saved file for this page http://m.news.nate.com/photoSlide/view?clstId=434328&section=sisa @chris : i will check if i can add layout test
Santosh Mahto
Comment 5 2013-07-15 03:08:52 PDT
Alexey Proskuryakov
Comment 6 2013-07-22 10:49:09 PDT
Comment on attachment 206651 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=206651&action=review > Source/WebCore/loader/DocumentLoader.cpp:1122 > + loader->cancel(); I'm not sure if canceling is an appropriate response here. We are failing the load, shouldn't it be handled as a failure?
Alexey Proskuryakov
Comment 7 2013-07-22 11:04:45 PDT
Also, can you make this happen with ApplicationCache? MHTML is disabled on many platforms, and having a cross-platform regression test will be a better protection against future regressions.
Michael Catanzaro
Comment 8 2015-12-31 16:14:30 PST
Comment on attachment 206651 [details] Patch Clearing the r? flag to get this out of request queue. If you still want to work on this, please do respond to Alexey's latest feedback. Thanks!
Note You need to log in before you can comment on or make changes to this bug.