Reviewed by Darin.
authormjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 18 Aug 2004 00:09:46 +0000 (00:09 +0000)
committermjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 18 Aug 2004 00:09:46 +0000 (00:09 +0000)
<rdar://problem/3703768> CrashTracer: ...50 crashes at com.apple.WebCore: KHTMLPart::xmlDocImpl const + 0

        * khtml/khtmlview.cpp:
        (KHTMLView::viewportMouseMoveEvent): Add a nil check and an
assertion for m_part being null. It seems impossible for this to
happen, so we want to debug it ourselves, but in the meantime,
let's try to avoid causing crashes for our users.

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

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

index d7ed73e..7e2fa4e 100644 (file)
@@ -1,3 +1,15 @@
+2004-08-17  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Darin.
+
+       <rdar://problem/3703768> CrashTracer: ...50 crashes at com.apple.WebCore: KHTMLPart::xmlDocImpl const + 0
+       
+        * khtml/khtmlview.cpp:
+        (KHTMLView::viewportMouseMoveEvent): Add a nil check and an
+       assertion for m_part being null. It seems impossible for this to
+       happen, so we want to debug it ourselves, but in the meantime,
+       let's try to avoid causing crashes for our users.
+
 2004-08-17  David Hyatt  <hyatt@apple.com>
 
        Fix the line truncation function for Emerson so that at the far left setting of the slider, only the header
index f829ee5..738fff0 100644 (file)
@@ -832,7 +832,12 @@ static bool isSubmitImage(DOM::NodeImpl *node)
 
 void KHTMLView::viewportMouseMoveEvent( QMouseEvent * _mouse )
 {
-    if(!m_part->xmlDocImpl()) return;
+    // in Radar 3703768 we saw frequent crashes apparently due to the
+    // part being null here, which seems impossible, so check for nil
+    // but also assert so that we can try to figure this out in debug
+    // builds, if it happens.
+    assert(m_part);
+    if(!m_part || !m_part->xmlDocImpl()) return;
 
     int xm, ym;
     viewportToContents(_mouse->x(), _mouse->y(), xm, ym);