Changeset 161559 in webkit


Ignore:
Timestamp:
Jan 9, 2014 9:55:39 AM (10 years ago)
Author:
Carlos Garcia Campos
Message:

Crash when starting a download before the network process has been launched
https://bugs.webkit.org/show_bug.cgi?id=126258

Reviewed by Anders Carlsson.

We need to ensure there's a network process running before
starting a new download like we do when using the web process.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::download): Use ChildProcessProxy::send()
instead of using the connection to make sure messages are queued
if the process is still launching.
(WebKit::WebContext::createDownloadProxy): Call
ensureNetworkProcess() before creating the download proxy.

Location:
trunk/Source/WebKit2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r161555 r161559  
     12014-01-09  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        Crash when starting a download before the network process has been launched
     4        https://bugs.webkit.org/show_bug.cgi?id=126258
     5
     6        Reviewed by Anders Carlsson.
     7
     8        We need to ensure there's a network process running before
     9        starting a new download like we do when using the web process.
     10
     11        * UIProcess/WebContext.cpp:
     12        (WebKit::WebContext::download): Use ChildProcessProxy::send()
     13        instead of using the connection to make sure messages are queued
     14        if the process is still launching.
     15        (WebKit::WebContext::createDownloadProxy): Call
     16        ensureNetworkProcess() before creating the download proxy.
     17
    1182014-01-09  Carlos Garcia Campos  <cgarcia@igalia.com>
    219
  • trunk/Source/WebKit2/UIProcess/WebContext.cpp

    r161309 r161559  
    764764    if (usesNetworkProcess() && networkProcess()) {
    765765        // FIXME (NetworkProcess): Replicate whatever FrameLoader::setOriginalURLForDownloadRequest does with the request here.
    766         networkProcess()->connection()->send(Messages::NetworkProcess::DownloadRequest(downloadProxy->downloadID(), request), 0);
     766        networkProcess()->send(Messages::NetworkProcess::DownloadRequest(downloadProxy->downloadID(), request), 0);
    767767        return downloadProxy;
    768768    }
     
    939939{
    940940#if ENABLE(NETWORK_PROCESS)
    941     if (usesNetworkProcess())
     941    if (usesNetworkProcess()) {
     942        ensureNetworkProcess();
     943        ASSERT(m_networkProcess);
    942944        return m_networkProcess->createDownloadProxy();
     945    }
    943946#endif
    944947
Note: See TracChangeset for help on using the changeset viewer.