Bug 95971 - [WK2][Minibrowser] Crashes on download link.
Summary: [WK2][Minibrowser] Crashes on download link.
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit EFL (show other bugs)
Version: 528+ (Nightly build)
Hardware: Other Linux
: P2 Normal
Assignee: KyungTae Kim
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-06 03:56 PDT by Kangil Han
Modified: 2013-09-02 08:02 PDT (History)
3 users (show)

See Also:


Attachments
Patch (1.92 KB, patch)
2012-10-04 04:47 PDT, KyungTae Kim
andersca: review-
buildbot: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Kangil Han 2012-09-06 03:56:03 PDT
Click on downloading webkit nightly build source tarball makes hang on Minibrowser.
Comment 1 KyungTae Kim 2012-10-04 04:47:18 PDT
Created attachment 167076 [details]
Patch
Comment 2 Build Bot 2012-10-04 04:51:12 PDT
Comment on attachment 167076 [details]
Patch

Attachment 167076 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/14175068
Comment 3 Early Warning System Bot 2012-10-04 04:56:26 PDT
Comment on attachment 167076 [details]
Patch

Attachment 167076 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/14177050
Comment 4 KyungTae Kim 2012-10-04 05:15:18 PDT
On EFL port, DownloadManager have the below issue:
In DownloadManager::convertHandleToDownload , The downloadID is inserted after Download::startWithHandle called.
But when download failed, the DownloadManager::downloadFinished  called by the below callstack, and check the downloadID for removing it, then ASSERT FAIL occured because the downloadID is not yet inserted.

WebKit::WebFrame::convertHandleToDownload          WebKit2/WebProcess/WebPage/WebFrame.cpp:243
 WebKit::DownloadManager::convertHandleToDownload  WebKit2/WebProcess/Downloads/DownloadManager.cpp:63
  WebKit::Download::startWithHandle                WebKit2/WebProcess/Downloads/soup/DownloadSoup.cpp:161
   WebKit::DownloadClient::didReceiveResponse      WebKit2/WebProcess/Downloads/soup/DownloadSoup.cpp:95
    WebKit::DownloadClient::downloadFailed         WebKit2/WebProcess/Downloads/soup/DownloadSoup.cpp:57
     WebKit::Download::didFail                     WebKit2/WebProcess/Downloads/Download.cpp:149
      WebKit::DownloadManager::downloadFinished    WebKit2/WebProcess/Downloads/DownloadManager.cpp:81


I think this situation is platform independent,
so I wonder why other ports don't have this assert issue when download failed.
Is there anyone give me a hint?
Comment 5 Gyuyoung Kim 2012-11-24 00:31:48 PST
Comment on attachment 167076 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=167076&action=review

I think you need to make a test case for this crash.

> Source/WebKit2/ChangeLog:3
> +        [EFL][Minibrowser] Crashes on download link.

I think [WK2] is proper bug prefix.
Comment 6 Anders Carlsson 2013-09-02 08:02:38 PDT
Comment on attachment 167076 [details]
Patch

This is incorrect. If startWithHandle fails then the error should be called asynchronously.