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

Changeset 169055 in webkit


Ignore:
Timestamp:
May 19, 2014, 12:54:48 PM (12 years ago)
Author:
Lucas Forschler
Message:

Merged r168909.

Location:
branches/safari-538.34.5-branch/Source/WebCore
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-538.34.5-branch/Source/WebCore/ChangeLog

    r168965 r169055  
     12014-05-19  Lucas Forschler  <lforschler@apple.com>
     2
     3        Merge r168909
     4
     5    2014-05-15  Alexey Proskuryakov  <ap@apple.com>
     6
     7            NetworkProcess crashes at ResourceHandle::continueDidReceiveResponse
     8            https://bugs.webkit.org/show_bug.cgi?id=132966
     9            <rdar://problem/16373694>
     10
     11            Reviewed by Brady Eidson.
     12
     13            Covered by many fast/files tests.
     14
     15            * platform/network/BlobResourceHandle.cpp: (WebCore::BlobResourceHandle::continueDidReceiveResponse):
     16            * platform/network/BlobResourceHandle.h:
     17            * platform/network/ResourceHandle.h:
     18            Don't call delegate's continueDidReceiveResponse when loading a blob:// URL,
     19            the delegate is null. On the Mac, we used to lazily create it, which was also wrong,
     20            but at least not observable.
     21
    1222014-05-16  Lucas Forschler  <lforschler@apple.com>
    223
  • branches/safari-538.34.5-branch/Source/WebCore/platform/network/BlobResourceHandle.cpp

    r168391 r169055  
    203203}
    204204
     205void BlobResourceHandle::continueDidReceiveResponse()
     206{
     207    // BlobResourceHandle doesn't wait for didReceiveResponse, and it currently cannot be used for downloading.
     208}
     209
    205210void delayedStartBlobResourceHandle(void* context)
    206211{
  • branches/safari-538.34.5-branch/Source/WebCore/platform/network/BlobResourceHandle.h

    r168391 r169055  
    4949struct BlobDataItem;
    5050
    51 class BlobResourceHandle : public FileStreamClient, public ResourceHandle  {
     51class BlobResourceHandle final : public FileStreamClient, public ResourceHandle  {
    5252public:
    5353    static PassRefPtr<BlobResourceHandle> createAsync(BlobData*, const ResourceRequest&, ResourceHandleClient*);
    5454
    5555    static void loadResourceSynchronously(BlobData*, const ResourceRequest&, ResourceError&, ResourceResponse&, Vector<char>& data);
    56 
    57     // FileStreamClient methods.
    58     virtual void didGetSize(long long) override;
    59     virtual void didOpen(bool) override;
    60     virtual void didRead(int) override;
    61 
    62     // ResourceHandle methods.
    63     virtual void cancel() override;
    6456
    6557    void start();
    … …  
    7365    BlobResourceHandle(BlobData*, const ResourceRequest&, ResourceHandleClient*, bool async);
    7466    virtual ~BlobResourceHandle();
     67
     68    // FileStreamClient methods.
     69    virtual void didGetSize(long long) override;
     70    virtual void didOpen(bool) override;
     71    virtual void didRead(int) override;
     72
     73    // ResourceHandle methods.
     74    virtual void cancel() override;
     75    virtual void continueDidReceiveResponse() override;
    7576
    7677    void doStart();
  • branches/safari-538.34.5-branch/Source/WebCore/platform/network/ResourceHandle.h

    r168248 r169055  
    208208
    209209    // Called in response to ResourceHandleClient::didReceiveResponseAsync().
    210     void continueDidReceiveResponse();
     210    virtual void continueDidReceiveResponse();
    211211
    212212#if USE(PROTECTION_SPACE_AUTH_CALLBACK)
Note: See TracChangeset for help on using the changeset viewer.