Changeset 241826 in webkit


Ignore:
Timestamp:
Feb 20, 2019 11:43:44 AM (5 years ago)
Author:
achristensen@apple.com
Message:

Move API::HTTPCookieStore ownership from API::WebsiteDataStore to WebKit::WebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=194842

Reviewed by Geoff Garen.

We need a way to get from WebKit::WebsiteDataStore to API::HTTPCookieStore. It can't be done before this.
This made an existing reference cycle easier to see, and we should fix it in a followup patch.

  • UIProcess/API/APIWebsiteDataStore.cpp:

(API::WebsiteDataStore::httpCookieStore):

  • UIProcess/API/APIWebsiteDataStore.h:
  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::cookieStore):

  • UIProcess/WebsiteData/WebsiteDataStore.h:
Location:
trunk/Source/WebKit
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r241823 r241826  
     12019-02-20  Alex Christensen  <achristensen@webkit.org>
     2
     3        Move API::HTTPCookieStore ownership from API::WebsiteDataStore to WebKit::WebsiteDataStore
     4        https://bugs.webkit.org/show_bug.cgi?id=194842
     5
     6        Reviewed by Geoff Garen.
     7
     8        We need a way to get from WebKit::WebsiteDataStore to API::HTTPCookieStore.  It can't be done before this.
     9        This made an existing reference cycle easier to see, and we should fix it in a followup patch.
     10
     11        * UIProcess/API/APIWebsiteDataStore.cpp:
     12        (API::WebsiteDataStore::httpCookieStore):
     13        * UIProcess/API/APIWebsiteDataStore.h:
     14        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
     15        (WebKit::WebsiteDataStore::cookieStore):
     16        * UIProcess/WebsiteData/WebsiteDataStore.h:
     17
    1182019-02-20  Chris Dumez  <cdumez@apple.com>
    219
  • trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp

    r241183 r241826  
    3838namespace API {
    3939
    40 HTTPCookieStore::HTTPCookieStore(WebsiteDataStore& websiteDataStore)
    41     : m_owningDataStore(websiteDataStore.websiteDataStore())
     40HTTPCookieStore::HTTPCookieStore(WebKit::WebsiteDataStore& websiteDataStore)
     41    : m_owningDataStore(websiteDataStore)
    4242{
    4343    if (!m_owningDataStore->processPoolForCookieStorageOperations())
  • trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.h

    r240302 r241826  
    5252class HTTPCookieStore final : public ObjectImpl<Object::Type::HTTPCookieStore> {
    5353public:
    54     static Ref<HTTPCookieStore> create(WebsiteDataStore& websiteDataStore)
     54    static Ref<HTTPCookieStore> create(WebKit::WebsiteDataStore& websiteDataStore)
    5555    {
    5656        return adoptRef(*new HTTPCookieStore(websiteDataStore));
     
    7676
    7777private:
    78     HTTPCookieStore(WebsiteDataStore&);
     78    HTTPCookieStore(WebKit::WebsiteDataStore&);
    7979
    8080    void registerForNewProcessPoolNotifications();
     
    8888    void stopObservingChangesToDefaultUIProcessCookieStore();
    8989   
     90    // FIXME: This is a reference cycle.
    9091    Ref<WebKit::WebsiteDataStore> m_owningDataStore;
    9192    HashSet<Observer*> m_observers;
  • trunk/Source/WebKit/UIProcess/API/APIWebsiteDataStore.cpp

    r239513 r241826  
    8686HTTPCookieStore& WebsiteDataStore::httpCookieStore()
    8787{
    88     if (!m_apiHTTPCookieStore)
    89         m_apiHTTPCookieStore = HTTPCookieStore::create(*this);
    90 
    91     return *m_apiHTTPCookieStore;
     88    return m_websiteDataStore->cookieStore();
    9289}
    9390
  • trunk/Source/WebKit/UIProcess/API/APIWebsiteDataStore.h

    r239513 r241826  
    9292
    9393    Ref<WebKit::WebsiteDataStore> m_websiteDataStore;
    94     RefPtr<HTTPCookieStore> m_apiHTTPCookieStore;
    9594};
    9695
  • trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp

    r241574 r241826  
    20982098#endif
    20992099
     2100API::HTTPCookieStore& WebsiteDataStore::cookieStore()
     2101{
     2102    if (!m_cookieStore)
     2103        m_cookieStore = API::HTTPCookieStore::create(*this);
     2104
     2105    return *m_cookieStore;
     2106}
     2107
    21002108void WebsiteDataStore::didCreateNetworkProcess()
    21012109{
  • trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h

    r240805 r241826  
    5656#include <WebKitAdditions/WebsiteDataStoreAdditions.h>
    5757#endif
     58
     59namespace API {
     60class HTTPCookieStore;
     61}
    5862
    5963namespace WebCore {
     
    230234    void setClient(UniqueRef<WebsiteDataStoreClient>&& client) { m_client = WTFMove(client); }
    231235
     236    API::HTTPCookieStore& cookieStore();
     237
    232238#if HAVE(LOAD_OPTIMIZER)
    233239WEBSITEDATASTORE_LOADOPTIMIZER_ADDITIONS_1
     
    310316
    311317    UniqueRef<WebsiteDataStoreClient> m_client;
     318
     319    RefPtr<API::HTTPCookieStore> m_cookieStore;
    312320};
    313321
Note: See TracChangeset for help on using the changeset viewer.