Title: [138191] trunk/Source/WebCore
Revision
138191
Author
[email protected]
Date
2012-12-19 13:06:03 -0800 (Wed, 19 Dec 2012)

Log Message

        <rdar://problem/12896478> Cannot log into gmail/facebook with NetworkProcess and private browsing enabled
        https://bugs.webkit.org/show_bug.cgi?id=105454

        Reviewed by Brady Eidson.

        Request was using a wrong session after a redirect, because session cannot be
        preserved over IPC.

        Just set the storage session after calling the client, it is not really meaningful
        for a client to change session behind WebKit's back.

        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::ResourceHandle::willSendRequest):
        * platform/network/mac/ResourceHandleMac.mm:
        (WebCore::ResourceHandle::willSendRequest):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (138190 => 138191)


--- trunk/Source/WebCore/ChangeLog	2012-12-19 20:48:34 UTC (rev 138190)
+++ trunk/Source/WebCore/ChangeLog	2012-12-19 21:06:03 UTC (rev 138191)
@@ -1,3 +1,21 @@
+2012-12-19  Alexey Proskuryakov  <[email protected]>
+
+        <rdar://problem/12896478> Cannot log into gmail/facebook with NetworkProcess and private browsing enabled
+        https://bugs.webkit.org/show_bug.cgi?id=105454
+
+        Reviewed by Brady Eidson.
+
+        Request was using a wrong session after a redirect, because session cannot be
+        preserved over IPC.
+
+        Just set the storage session after calling the client, it is not really meaningful
+        for a client to change session behind WebKit's back.
+
+        * platform/network/cf/ResourceHandleCFNet.cpp:
+        (WebCore::ResourceHandle::willSendRequest):
+        * platform/network/mac/ResourceHandleMac.mm:
+        (WebCore::ResourceHandle::willSendRequest):
+
 2012-12-19  Alexis Menard  <[email protected]>
 
         Implement CSS parsing for CSS transitions unprefixed.

Modified: trunk/Source/WebCore/platform/network/cf/ResourceHandleCFNet.cpp (138190 => 138191)


--- trunk/Source/WebCore/platform/network/cf/ResourceHandleCFNet.cpp	2012-12-19 20:48:34 UTC (rev 138190)
+++ trunk/Source/WebCore/platform/network/cf/ResourceHandleCFNet.cpp	2012-12-19 21:06:03 UTC (rev 138191)
@@ -559,9 +559,10 @@
         }
     }
 
+    client()->willSendRequest(this, request, redirectResponse);
+
+    // Client call may not preserve the session, especially if the request is sent over IPC.
     request.setStorageSession(d->m_storageSession.get());
-
-    client()->willSendRequest(this, request, redirectResponse);
 }
 
 bool ResourceHandle::shouldUseCredentialStorage()

Modified: trunk/Source/WebCore/platform/network/mac/ResourceHandleMac.mm (138190 => 138191)


--- trunk/Source/WebCore/platform/network/mac/ResourceHandleMac.mm	2012-12-19 20:48:34 UTC (rev 138190)
+++ trunk/Source/WebCore/platform/network/mac/ResourceHandleMac.mm	2012-12-19 21:06:03 UTC (rev 138191)
@@ -472,10 +472,10 @@
         }
     }
 
-    if (d->m_storageSession)
-        request.setStorageSession(d->m_storageSession.get());
+    client()->willSendRequest(this, request, redirectResponse);
 
-    client()->willSendRequest(this, request, redirectResponse);
+    // Client call may not preserve the session, especially if the request is sent over IPC.
+    request.setStorageSession(d->m_storageSession.get());
 }
 
 bool ResourceHandle::shouldUseCredentialStorage()
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to