Reviewed by John.
authormjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 27 Feb 2004 22:55:54 +0000 (22:55 +0000)
committermjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 27 Feb 2004 22:55:54 +0000 (22:55 +0000)
<rdar://problem/3514733>: nil-deref in createHTMLEventListener at skiset.com
<rdar://problem/3510676>: nil-deref of view in DocumentImpl::createHTMLEventListener at kirotv.com

* khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::createHTMLEventListener): Don't create the listener if there is no
part. Also, get the part when going through the view. This prevents problems when
handlers are set or removed from the onUnload handler.

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

WebCore/ChangeLog-2005-08-23
WebCore/khtml/xml/dom_docimpl.cpp

index a54bfd5..288d84e 100644 (file)
@@ -1,3 +1,15 @@
+2004-02-26  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by John.
+
+       <rdar://problem/3514733>: nil-deref in createHTMLEventListener at skiset.com
+       <rdar://problem/3510676>: nil-deref of view in DocumentImpl::createHTMLEventListener at kirotv.com
+       
+       * khtml/xml/dom_docimpl.cpp:
+        (DocumentImpl::createHTMLEventListener): Don't create the listener if there is no
+       part. Also, get the part when going through the view. This prevents problems when
+       handlers are set or removed from the onUnload handler.
+
 2004-02-27  Maciej Stachowiak  <mjs@apple.com>
 
         Reviewed by Dave.
index 6dc25f2..29995e7 100644 (file)
@@ -2389,7 +2389,11 @@ bool DocumentImpl::hasWindowEventListener(int id)
 
 EventListener *DocumentImpl::createHTMLEventListener(QString code)
 {
-    return view()->part()->createHTMLEventListener(code);
+    if (part()) {
+       return part()->createHTMLEventListener(code);
+    } else {
+       return NULL;
+    }
 }
 
 void DocumentImpl::dispatchImageLoadEventSoon(RenderImage *image)