Reviewed by Darin.
authoradele <adele@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 8 Feb 2005 01:33:11 +0000 (01:33 +0000)
committeradele <adele@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 8 Feb 2005 01:33:11 +0000 (01:33 +0000)
        Fix for <rdar://problem/3993628> REGRESSION (180-181): Logitelnet bank's website doesn't work

        This fixes an oversight in the fix for <rdar://problem/3964286>.
        We're now making sure there is a document before calling checkCompleted in slotLoaderRequestDone.
        That function is called even when other parts finish loads of their subresources, so we could end
up calling checkCompleted before we had a document. We also looked over all the other calls to
checkCompleted to convince ourselves no other call sites had a similar issue.

        * khtml/khtml_part.cpp: (KHTMLPart::slotLoaderRequestDone): Check if doc is nil before calling
checkCompleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@8539 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog-2005-08-23
WebCore/khtml/khtml_part.cpp

index ef31483c736cef7159883fd69528e77206ed85ce..f0d6cc7b579bc834fe3319cba4c23b93cb113c3b 100644 (file)
@@ -1,3 +1,18 @@
+2005-02-07  Adele Amchan  <adele@apple.com>
+
+        Reviewed by Darin.
+
+        Fix for <rdar://problem/3993628> REGRESSION (180-181): Logitelnet bank's website doesn't work
+
+        This fixes an oversight in the fix for <rdar://problem/3964286>.  
+        We're now making sure there is a document before calling checkCompleted in slotLoaderRequestDone.
+               That function is called even when other parts finish loads of their subresources, so we could end
+       up calling checkCompleted before we had a document. We also looked over all the other calls to
+       checkCompleted to convince ourselves no other call sites had a similar issue.
+
+        * khtml/khtml_part.cpp: (KHTMLPart::slotLoaderRequestDone): Check if doc is nil before calling
+       checkCompleted.
+
 2005-02-07  Ken Kocienda  <kocienda@apple.com>
 
         Reviewed by Darin
index a180785d2047506118cb14c6a7fe0404ada75d7d..952fd395b2b16d6606483c019d64bd5367c5cef9 100644 (file)
@@ -1772,8 +1772,14 @@ void KHTMLPart::slotLoaderRequestDone( khtml::DocLoader* dl, khtml::CachedObject
     }
   }
 #endif
-
-  checkCompleted();
+  // We really only need to call checkCompleted when our own resources are done loading.
+  // So we should check that d->m_doc->docLoader() == dl here.
+  // That might help with performance by skipping some unnecessary work, but it's too
+  // risky to make that change right now (2005-02-07), because we might be accidentally
+  // depending on the extra checkCompleted calls.
+  if (d->m_doc) {
+    checkCompleted();
+  }
 }
 
 #if !APPLE_CHANGES