Changeset 232887 in webkit


Ignore:
Timestamp:
Jun 15, 2018 12:33:41 PM (6 years ago)
Author:
pvollan@apple.com
Message:

Crash in both StorageProcess and UIProcess when using custom WKWebsiteDataStores for data management.
<rdar://problem/41019893> and https://bugs.webkit.org/show_bug.cgi?id=186682

Patch by Brady Eidson <beidson@apple.com> on 2018-06-15
Reviewed by Chris Dumez.

  • UIProcess/Storage/StorageProcessProxy.cpp:

(WebKit::StorageProcessProxy::didClose): Protect this and the process pool as the cleanup that follows

might cause either to get destroyed.

  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::fetchDataAndApply): Protect the operating WebsiteDataStore while async operations

are in flight. Otherwise if the data store is destroyed, the SessionIDs for those operations will get
destroyed before they complete.

(WebKit::WebsiteDataStore::removeData): Ditto.

Location:
trunk/Source/WebKit
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r232886 r232887  
    1515          destroyed before they complete.
    1616        (WebKit::WebsiteDataStore::removeData): Ditto.
     17
     182018-06-15  Per Arne Vollan  <pvollan@apple.com>
     19
     20        Unreviewed build fix after r232634.
     21
     22        * WebProcess/WebPage/DrawingArea.h:
     23        * WebProcess/WebPage/DrawingArea.messages.in:
    1724
    18252018-06-15  Per Arne Vollan  <pvollan@apple.com>
  • trunk/Source/WebKit/WebProcess/WebPage/DrawingArea.h

    r230834 r232887  
    148148#endif
    149149
    150 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101400
     150#if PLATFORM(MAC) && ENABLE(WEBPROCESS_WINDOWSERVER_BLOCKING)
    151151    void displayWasRefreshed();
    152152#endif
  • trunk/Source/WebKit/WebProcess/WebPage/DrawingArea.messages.in

    r230269 r232887  
    4646#endif
    4747
    48 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101400
     48#if PLATFORM(MAC) && ENABLE(WEBPROCESS_WINDOWSERVER_BLOCKING)
    4949    DisplayWasRefreshed()
    5050#endif
Note: See TracChangeset for help on using the changeset viewer.