Title: [265727] trunk/Source/WebKit
- Revision
- 265727
- Author
- [email protected]
- Date
- 2020-08-14 20:58:34 -0700 (Fri, 14 Aug 2020)
Log Message
Revert r263551
https://bugs.webkit.org/show_bug.cgi?id=215530
<rdar://problem/66961066>
Patch by Alex Christensen <[email protected]> on 2020-08-14
Reviewed by Geoffrey Garen.
I was hoping to fix many developers' bugs, but it caused hangs and more hangs, so back to the status quo.
https://bugs.webkit.org/show_bug.cgi?id=203547 will fix this the right way in the hopefully-not-too-distant future.
* UIProcess/API/APIHTTPCookieStore.cpp:
(API::HTTPCookieStore::setCookies):
(API::HTTPCookieStore::registerForNewProcessPoolNotifications):
(API::HTTPCookieStore::flushDefaultUIProcessCookieStore):
* UIProcess/API/APIHTTPCookieStore.h:
* UIProcess/API/Cocoa/APIHTTPCookieStoreCocoa.mm:
(API::HTTPCookieStore::flushDefaultUIProcessCookieStore):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (265726 => 265727)
--- trunk/Source/WebKit/ChangeLog 2020-08-15 03:15:01 UTC (rev 265726)
+++ trunk/Source/WebKit/ChangeLog 2020-08-15 03:58:34 UTC (rev 265727)
@@ -1,3 +1,22 @@
+2020-08-14 Alex Christensen <[email protected]>
+
+ Revert r263551
+ https://bugs.webkit.org/show_bug.cgi?id=215530
+ <rdar://problem/66961066>
+
+ Reviewed by Geoffrey Garen.
+
+ I was hoping to fix many developers' bugs, but it caused hangs and more hangs, so back to the status quo.
+ https://bugs.webkit.org/show_bug.cgi?id=203547 will fix this the right way in the hopefully-not-too-distant future.
+
+ * UIProcess/API/APIHTTPCookieStore.cpp:
+ (API::HTTPCookieStore::setCookies):
+ (API::HTTPCookieStore::registerForNewProcessPoolNotifications):
+ (API::HTTPCookieStore::flushDefaultUIProcessCookieStore):
+ * UIProcess/API/APIHTTPCookieStore.h:
+ * UIProcess/API/Cocoa/APIHTTPCookieStoreCocoa.mm:
+ (API::HTTPCookieStore::flushDefaultUIProcessCookieStore):
+
2020-08-14 Kate Cheney <[email protected]>
Convert remaining SharedMemory::Handle to SharedMemory::IPCHandle
Modified: trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp (265726 => 265727)
--- trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp 2020-08-15 03:15:01 UTC (rev 265726)
+++ trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp 2020-08-15 03:58:34 UTC (rev 265727)
@@ -115,22 +115,17 @@
void HTTPCookieStore::setCookies(const Vector<WebCore::Cookie>& cookies, CompletionHandler<void()>&& completionHandler)
{
filterAppBoundCookies(cookies, [this, protectedThis = makeRef(*this), completionHandler = WTFMove(completionHandler)] (auto&& appBoundCookies) mutable {
- bool needsFlush = false;
auto* pool = m_owningDataStore->processPoolForCookieStorageOperations();
if (!pool) {
for (auto& cookie : appBoundCookies) {
// FIXME: pendingCookies used for defaultSession because session cookies cannot be propagated to Network Process with uiProcessCookieStorageIdentifier.
- if (m_owningDataStore->sessionID() == PAL::SessionID::defaultSessionID() && !cookie.session) {
- needsFlush = true;
+ if (m_owningDataStore->sessionID() == PAL::SessionID::defaultSessionID() && !cookie.session)
setCookieInDefaultUIProcessCookieStore(cookie);
- } else
+ else
m_owningDataStore->addPendingCookie(cookie);
}
- if (needsFlush)
- flushDefaultUIProcessCookieStore(WTFMove(completionHandler));
- else
- RunLoop::main().dispatch(WTFMove(completionHandler));
+ RunLoop::main().dispatch(WTFMove(completionHandler));
return;
}
@@ -297,7 +292,7 @@
// Now that an associated process pool exists, we need to flush the UI process cookie store
// to make sure any changes are reflected within the new process pool.
- flushDefaultUIProcessCookieStore([] { });
+ flushDefaultUIProcessCookieStore();
newProcessPool.ensureNetworkProcess();
if (m_cookieManagerProxyObserver) {
@@ -317,7 +312,7 @@
}
#if !PLATFORM(COCOA)
-void HTTPCookieStore::flushDefaultUIProcessCookieStore(CompletionHandler<void()>&& completionHandler) { completionHandler(); }
+void HTTPCookieStore::flushDefaultUIProcessCookieStore() { }
Vector<WebCore::Cookie> HTTPCookieStore::getAllDefaultUIProcessCookieStoreCookies() { return { }; }
void HTTPCookieStore::setCookieInDefaultUIProcessCookieStore(const WebCore::Cookie&) { }
void HTTPCookieStore::deleteCookieFromDefaultUIProcessCookieStore(const WebCore::Cookie&) { }
Modified: trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.h (265726 => 265727)
--- trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.h 2020-08-15 03:15:01 UTC (rev 265726)
+++ trunk/Source/WebKit/UIProcess/API/APIHTTPCookieStore.h 2020-08-15 03:58:34 UTC (rev 265727)
@@ -85,7 +85,7 @@
void registerForNewProcessPoolNotifications();
void unregisterForNewProcessPoolNotifications();
- void flushDefaultUIProcessCookieStore(CompletionHandler<void()>&&);
+ void flushDefaultUIProcessCookieStore();
static Vector<WebCore::Cookie> getAllDefaultUIProcessCookieStoreCookies();
static void setCookieInDefaultUIProcessCookieStore(const WebCore::Cookie&);
static void deleteCookieFromDefaultUIProcessCookieStore(const WebCore::Cookie&);
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/APIHTTPCookieStoreCocoa.mm (265726 => 265727)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/APIHTTPCookieStoreCocoa.mm 2020-08-15 03:15:01 UTC (rev 265726)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/APIHTTPCookieStoreCocoa.mm 2020-08-15 03:58:34 UTC (rev 265727)
@@ -36,19 +36,9 @@
namespace API {
-void HTTPCookieStore::flushDefaultUIProcessCookieStore(CompletionHandler<void()>&& completionHandler)
+void HTTPCookieStore::flushDefaultUIProcessCookieStore()
{
-#if HAVE(FOUNDATION_WITH_SAVE_COOKIES_WITH_COMPLETION_HANDLER)
- ASSERT(RunLoop::isMain());
- m_owningDataStore->dispatchOnQueue([completionHandler = WTFMove(completionHandler)] () mutable {
- [[NSHTTPCookieStorage sharedHTTPCookieStorage] _saveCookies:makeBlockPtr([completionHandler = WTFMove(completionHandler)]() mutable {
- RunLoop::main().dispatch(WTFMove(completionHandler));
- }).get()];
- });
-#else
[[NSHTTPCookieStorage sharedHTTPCookieStorage] _saveCookies];
- RunLoop::main().dispatch(WTFMove(completionHandler));
-#endif
}
Vector<WebCore::Cookie> HTTPCookieStore::getAllDefaultUIProcessCookieStoreCookies()
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes