Diff
Modified: trunk/Source/WebKit2/ChangeLog (163149 => 163150)
--- trunk/Source/WebKit2/ChangeLog 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/ChangeLog 2014-01-31 03:16:21 UTC (rev 163150)
@@ -1,3 +1,35 @@
+2014-01-30 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r163125.
+ http://trac.webkit.org/changeset/163125
+ https://bugs.webkit.org/show_bug.cgi?id=127980
+
+ caused 9 layout tests to assert and crash (Requested by estes
+ on #webkit).
+
+ * NetworkProcess/mac/RemoteNetworkingContext.mm:
+ (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
+ * Shared/SessionTracker.cpp:
+ (WebKit::SessionTracker::session):
+ (WebKit::SessionTracker::setSession):
+ (WebKit::SessionTracker::destroySession):
+ * Shared/SessionTracker.h:
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::setSession):
+ * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
+ (WebKit::legacySessionID):
+ (WebKit::WebPlatformStrategies::cookiesForDOM):
+ (WebKit::WebPlatformStrategies::setCookiesFromDOM):
+ (WebKit::WebPlatformStrategies::cookiesEnabled):
+ (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
+ (WebKit::WebPlatformStrategies::getRawCookies):
+ (WebKit::WebPlatformStrategies::deleteCookie):
+ * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
+ (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
+ * WebProcess/WebPage/WebPage.cpp:
+ * WebProcess/WebPage/WebPage.h:
+ (WebKit::WebPage::setSessionID):
+
2014-01-30 Anders Carlsson <[email protected]>
Add webView:didFinishLoadingNavigation: delegate method
Modified: trunk/Source/WebKit2/NetworkProcess/mac/RemoteNetworkingContext.mm (163149 => 163150)
--- trunk/Source/WebKit2/NetworkProcess/mac/RemoteNetworkingContext.mm 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/NetworkProcess/mac/RemoteNetworkingContext.mm 2014-01-31 03:16:21 UTC (rev 163150)
@@ -79,8 +79,6 @@
void RemoteNetworkingContext::ensurePrivateBrowsingSession(uint64_t sessionID)
{
- ASSERT(SessionTracker::isEphemeralID(sessionID));
-
if (SessionTracker::session(sessionID))
return;
Modified: trunk/Source/WebKit2/Shared/SessionTracker.cpp (163149 => 163150)
--- trunk/Source/WebKit2/Shared/SessionTracker.cpp 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/Shared/SessionTracker.cpp 2014-01-31 03:16:21 UTC (rev 163150)
@@ -44,14 +44,6 @@
return map.get();
}
-static HashMap<const NetworkStorageSession*, uint64_t>& storageSessionToID()
-{
- ASSERT(isMainThread());
-
- static NeverDestroyed<HashMap<const NetworkStorageSession*, uint64_t>> map;
- return map.get();
-}
-
static String& identifierBase()
{
ASSERT(isMainThread());
@@ -74,28 +66,19 @@
{
if (sessionID == defaultSessionID)
return &NetworkStorageSession::defaultStorageSession();
- return staticSessionMap().get(sessionID);
+ return staticSessionMap().add(sessionID, nullptr).iterator->value.get();
}
-uint64_t SessionTracker::sessionID(const NetworkStorageSession& session)
-{
- if (&session == &NetworkStorageSession::defaultStorageSession())
- return defaultSessionID;
- return storageSessionToID().get(&session);
-}
-
void SessionTracker::setSession(uint64_t sessionID, std::unique_ptr<NetworkStorageSession> session)
{
ASSERT(sessionID != defaultSessionID);
- storageSessionToID().set(session.get(), sessionID);
- staticSessionMap().set(sessionID, std::move(session));
+ staticSessionMap().add(sessionID, nullptr).iterator->value = std::move(session);
}
void SessionTracker::destroySession(uint64_t sessionID)
{
ASSERT(isMainThread());
- storageSessionToID().remove(session(sessionID));
staticSessionMap().remove(sessionID);
}
Modified: trunk/Source/WebKit2/Shared/SessionTracker.h (163149 => 163150)
--- trunk/Source/WebKit2/Shared/SessionTracker.h 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/Shared/SessionTracker.h 2014-01-31 03:16:21 UTC (rev 163150)
@@ -43,7 +43,6 @@
static const HashMap<uint64_t, std::unique_ptr<WebCore::NetworkStorageSession>>& sessionMap();
static const String& getIdentifierBase();
static WebCore::NetworkStorageSession* session(uint64_t sessionID);
- static uint64_t sessionID(const WebCore::NetworkStorageSession&);
static void setSession(uint64_t sessionID, std::unique_ptr<WebCore::NetworkStorageSession>);
static void destroySession(uint64_t sessionID);
static void setIdentifierBase(const String&);
Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (163149 => 163150)
--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp 2014-01-31 03:16:21 UTC (rev 163150)
@@ -512,8 +512,7 @@
m_process->send(Messages::WebPage::SetSessionID(session.getID()), m_pageID);
#if ENABLE(NETWORK_PROCESS)
- if (session.isEphemeral())
- m_process->context().sendToNetworkingProcess(Messages::NetworkProcess::EnsurePrivateBrowsingSession(session.getID()));
+ m_process->context().sendToNetworkingProcess(Messages::NetworkProcess::EnsurePrivateBrowsingSession(session.getID()));
#endif
}
Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp (163149 => 163150)
--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp 2014-01-31 03:16:21 UTC (rev 163150)
@@ -73,6 +73,13 @@
namespace WebKit {
+#if ENABLE(NETWORK_PROCESS)
+static uint64_t legacySessionID(const NetworkStorageSession &session)
+{
+ return session.isPrivateBrowsingSession() ? SessionTracker::legacyPrivateSessionID : SessionTracker::defaultSessionID;
+}
+#endif
+
void WebPlatformStrategies::initialize()
{
static NeverDestroyed<WebPlatformStrategies> platformStrategies;
@@ -134,7 +141,7 @@
#if ENABLE(NETWORK_PROCESS)
if (WebProcess::shared().usesNetworkProcess()) {
String result;
- if (!WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::CookiesForDOM(SessionTracker::sessionID(session), firstParty, url), Messages::NetworkConnectionToWebProcess::CookiesForDOM::Reply(result), 0))
+ if (!WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::CookiesForDOM(legacySessionID(session), firstParty, url), Messages::NetworkConnectionToWebProcess::CookiesForDOM::Reply(result), 0))
return String();
return result;
}
@@ -147,7 +154,7 @@
{
#if ENABLE(NETWORK_PROCESS)
if (WebProcess::shared().usesNetworkProcess()) {
- WebProcess::shared().networkConnection()->connection()->send(Messages::NetworkConnectionToWebProcess::SetCookiesFromDOM(SessionTracker::sessionID(session), firstParty, url, cookieString), 0);
+ WebProcess::shared().networkConnection()->connection()->send(Messages::NetworkConnectionToWebProcess::SetCookiesFromDOM(legacySessionID(session), firstParty, url, cookieString), 0);
return;
}
#endif
@@ -160,7 +167,7 @@
#if ENABLE(NETWORK_PROCESS)
if (WebProcess::shared().usesNetworkProcess()) {
bool result;
- if (!WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::CookiesEnabled(SessionTracker::sessionID(session), firstParty, url), Messages::NetworkConnectionToWebProcess::CookiesEnabled::Reply(result), 0))
+ if (!WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::CookiesEnabled(legacySessionID(session), firstParty, url), Messages::NetworkConnectionToWebProcess::CookiesEnabled::Reply(result), 0))
return false;
return result;
}
@@ -174,7 +181,7 @@
#if ENABLE(NETWORK_PROCESS)
if (WebProcess::shared().usesNetworkProcess()) {
String result;
- if (!WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::CookieRequestHeaderFieldValue(SessionTracker::sessionID(session), firstParty, url), Messages::NetworkConnectionToWebProcess::CookieRequestHeaderFieldValue::Reply(result), 0))
+ if (!WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::CookieRequestHeaderFieldValue(legacySessionID(session), firstParty, url), Messages::NetworkConnectionToWebProcess::CookieRequestHeaderFieldValue::Reply(result), 0))
return String();
return result;
}
@@ -187,7 +194,7 @@
{
#if ENABLE(NETWORK_PROCESS)
if (WebProcess::shared().usesNetworkProcess()) {
- if (!WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::GetRawCookies(SessionTracker::sessionID(session), firstParty, url), Messages::NetworkConnectionToWebProcess::GetRawCookies::Reply(rawCookies), 0))
+ if (!WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::GetRawCookies(legacySessionID(session), firstParty, url), Messages::NetworkConnectionToWebProcess::GetRawCookies::Reply(rawCookies), 0))
return false;
return true;
}
@@ -200,7 +207,7 @@
{
#if ENABLE(NETWORK_PROCESS)
if (WebProcess::shared().usesNetworkProcess()) {
- WebProcess::shared().networkConnection()->connection()->send(Messages::NetworkConnectionToWebProcess::DeleteCookie(SessionTracker::sessionID(session), url, cookieName), 0);
+ WebProcess::shared().networkConnection()->connection()->send(Messages::NetworkConnectionToWebProcess::DeleteCookie(legacySessionID(session), url, cookieName), 0);
return;
}
#endif
Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm (163149 => 163150)
--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm 2014-01-31 03:16:21 UTC (rev 163150)
@@ -44,8 +44,6 @@
void WebFrameNetworkingContext::ensurePrivateBrowsingSession(uint64_t sessionID)
{
- ASSERT(SessionTracker::isEphemeralID(sessionID));
-
if (SessionTracker::session(sessionID))
return;
Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (163149 => 163150)
--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2014-01-31 03:16:21 UTC (rev 163150)
@@ -2135,13 +2135,6 @@
return m_page->settings().privateBrowsingEnabled() ? SessionTracker::legacyPrivateSessionID : SessionTracker::defaultSessionID;
}
-void WebPage::setSessionID(uint64_t sessionID)
-{
- m_sessionID = sessionID;
- if (SessionTracker::isEphemeralID(sessionID))
- WebProcess::shared().ensurePrivateBrowsingSession(sessionID);
-}
-
void WebPage::didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction, uint64_t downloadID)
{
WebFrame* frame = WebProcess::shared().webFrame(frameID);
Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h (163149 => 163150)
--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h 2014-01-31 02:24:35 UTC (rev 163149)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h 2014-01-31 03:16:21 UTC (rev 163150)
@@ -181,7 +181,7 @@
WebCore::Page* corePage() const { return m_page.get(); }
uint64_t pageID() const { return m_pageID; }
uint64_t sessionID() const;
- void setSessionID(uint64_t);
+ void setSessionID(uint64_t sessionID) { m_sessionID = sessionID; }
void setSize(const WebCore::IntSize&);
const WebCore::IntSize& size() const { return m_viewSize; }