⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 244030 in webkit


Ignore:
Timestamp:
Apr 8, 2019, 11:45:15 AM (7 years ago)
Author:
achristensen@apple.com
Message:

REGRESSION(236463) DownloadManager can call a null CompletionHandler
https://bugs.webkit.org/show_bug.cgi?id=196414
<rdar://problem/48389434>

Reviewed by Geoff Garen.

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::convertToDownload):
DownloadManager::continueDecidePendingDownloadDestination is being called when there is no completion handler.
r236463 introduced an unchecked code path that can allow this to happen.

Location:
trunk/Source/WebKit
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r243969 r244030  
     12019-04-08  Alex Christensen  <achristensen@webkit.org>
     2
     3        REGRESSION(236463) DownloadManager can call a null CompletionHandler
     4        https://bugs.webkit.org/show_bug.cgi?id=196414
     5        <rdar://problem/48389434>
     6
     7        Reviewed by Geoff Garen.
     8
     9        * NetworkProcess/NetworkResourceLoader.cpp:
     10        (WebKit::NetworkResourceLoader::convertToDownload):
     11        DownloadManager::continueDecidePendingDownloadDestination is being called when there is no completion handler.
     12        r236463 introduced an unchecked code path that can allow this to happen.
     13
    1142019-04-07  Commit Queue  <commit-queue@webkit.org>
    215
  • trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp

    r243682 r244030  
    322322    }
    323323
    324     ASSERT(m_responseCompletionHandler);
    325     m_connection->networkProcess().downloadManager().convertNetworkLoadToDownload(downloadID, std::exchange(m_networkLoad, nullptr), WTFMove(m_responseCompletionHandler), WTFMove(m_fileReferences), request, response);
     324    if (m_responseCompletionHandler)
     325        m_connection->networkProcess().downloadManager().convertNetworkLoadToDownload(downloadID, std::exchange(m_networkLoad, nullptr), WTFMove(m_responseCompletionHandler), WTFMove(m_fileReferences), request, response);
    326326}
    327327
Note: See TracChangeset for help on using the changeset viewer.