[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.15.1-1414-gc69ee75

ap at apple.com ap at apple.com
Thu Oct 29 20:36:41 UTC 2009


The following commit has been merged in the webkit-1.1 branch:
commit 744d93ab25c2376212d6dab05f6cd637e57b750e
Author: ap at apple.com <ap at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Sep 30 02:02:47 2009 +0000

            Rubber-stamped by Brady Eidson.
    
            Assertion failure in http/tests/xmlhttprequest/failed-auth.html.
    
            I couldn't find out why this only started to happen now, but it was incorrect to check
            persistence of a credential returned by CredentialStorage::get() without checking that it
            was non-null. When there is no credential for the protection space in storage, get()
            returns a new object, and Credentil constructor doesn't initialize m_persistence.
    
            * platform/network/mac/ResourceHandleMac.mm:
            (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Moved the
            assertion after credential null check.
            (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Added the same persistence
            assertion, matching sync code (and CF one, as well).
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48918 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 2bf6c69..bc3351f 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2009-09-29  Alexey Proskuryakov  <ap at apple.com>
+
+        Rubber-stamped by Brady Eidson.
+
+        Assertion failure in http/tests/xmlhttprequest/failed-auth.html.
+
+        I couldn't find out why this only started to happen now, but it was incorrect to check
+        persistence of a credential returned by CredentialStorage::get() without checking that it
+        was non-null. When there is no credential for the protection space in storage, get()
+        returns a new object, and Credentil constructor doesn't initialize m_persistence.
+
+        * platform/network/mac/ResourceHandleMac.mm:
+        (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Moved the
+        assertion after credential null check.
+        (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Added the same persistence
+        assertion, matching sync code (and CF one, as well).
+
 2009-09-29  Yong Li  <yong.li at torchmobile.com>
 
         Reviewed by Darin Adler.
diff --git a/WebCore/platform/network/mac/ResourceHandleMac.mm b/WebCore/platform/network/mac/ResourceHandleMac.mm
index 83a4381..d0cda03 100644
--- a/WebCore/platform/network/mac/ResourceHandleMac.mm
+++ b/WebCore/platform/network/mac/ResourceHandleMac.mm
@@ -485,6 +485,7 @@ void ResourceHandle::didReceiveAuthenticationChallenge(const AuthenticationChall
     if (!challenge.previousFailureCount() && (!client() || client()->shouldUseCredentialStorage(this))) {
         Credential credential = CredentialStorage::get(challenge.protectionSpace());
         if (!credential.isEmpty() && credential != d->m_initialCredential) {
+            ASSERT(credential.persistence() == CredentialPersistenceNone);
             [challenge.sender() useCredential:mac(credential) forAuthenticationChallenge:mac(challenge)];
             return;
         }
@@ -951,8 +952,8 @@ void ResourceHandle::receivedCancellation(const AuthenticationChallenge& challen
     }
     if ([challenge previousFailureCount] == 0 && m_allowStoredCredentials) {
         Credential credential = CredentialStorage::get(core([challenge protectionSpace]));
-        ASSERT(credential.persistence() == CredentialPersistenceNone);
         if (!credential.isEmpty() && credential != m_initialCredential) {
+            ASSERT(credential.persistence() == CredentialPersistenceNone);
             [[challenge sender] useCredential:mac(credential) forAuthenticationChallenge:challenge];
             return;
         }

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list