Title: [151812] trunk
- Revision
- 151812
- Author
- [email protected]
- Date
- 2013-06-20 17:44:38 -0700 (Thu, 20 Jun 2013)
Log Message
https://bugs.webkit.org/show_bug.cgi?id=116495
Fix null-pointer deref in DocumentLoader::responseReceived()
Patch by Nate Chapin, reviewed by Mike West and myself.
Test: http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html
* loader/DocumentLoader.cpp: (WebCore::DocumentLoader::responseReceived): Added
a null check.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (151811 => 151812)
--- trunk/LayoutTests/ChangeLog 2013-06-20 23:43:04 UTC (rev 151811)
+++ trunk/LayoutTests/ChangeLog 2013-06-21 00:44:38 UTC (rev 151812)
@@ -1,3 +1,13 @@
+2013-06-20 Alexey Proskuryakov <[email protected]>
+
+ https://bugs.webkit.org/show_bug.cgi?id=116495
+ Fix null-pointer deref in DocumentLoader::responseReceived()
+
+ Patch by Nate Chapin, reviewed by Mike West and myself.
+
+ * http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event-expected.txt: Added.
+ * http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html: Added.
+
2013-06-20 Enrica Casucci <[email protected]>
Initial advance on the first glyph of the run is not correctly set for rtl text.
Added: trunk/LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event-expected.txt (0 => 151812)
--- trunk/LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event-expected.txt (rev 0)
+++ trunk/LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event-expected.txt 2013-06-21 00:44:38 UTC (rev 151812)
@@ -0,0 +1,2 @@
+CONSOLE MESSAGE: Refused to display 'http://127.0.0.1:8000/security/XFrameOptions/resources/x-frame-options-deny.cgi' in a frame because it set 'X-Frame-Options' to 'deny'.
+Test that if an iframe is denied, we don't crash if the load event detaches the frame.
Property changes on: trunk/LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event-expected.txt
___________________________________________________________________
Added: svn:mime-type
Added: svn:eol-style
Added: trunk/LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html (0 => 151812)
--- trunk/LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html (rev 0)
+++ trunk/LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html 2013-06-21 00:44:38 UTC (rev 151812)
@@ -0,0 +1,14 @@
+<script>
+ if (window.testRunner) {
+ testRunner.dumpAsText();
+ testRunner.waitUntilDone();
+ }
+
+ function loaded() {
+ document.body.removeChild(document.getElementById("i"));
+ if (window.testRunner)
+ testRunner.notifyDone();
+ }
+</script>
+Test that if an iframe is denied, we don't crash if the load event detaches the frame.
+<iframe id="i" src="" _onload_="loaded()"></iframe>
Property changes on: trunk/LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html
___________________________________________________________________
Added: svn:mime-type
Modified: trunk/Source/WebCore/ChangeLog (151811 => 151812)
--- trunk/Source/WebCore/ChangeLog 2013-06-20 23:43:04 UTC (rev 151811)
+++ trunk/Source/WebCore/ChangeLog 2013-06-21 00:44:38 UTC (rev 151812)
@@ -1,3 +1,15 @@
+2013-06-20 Alexey Proskuryakov <[email protected]>
+
+ https://bugs.webkit.org/show_bug.cgi?id=116495
+ Fix null-pointer deref in DocumentLoader::responseReceived()
+
+ Patch by Nate Chapin, reviewed by Mike West and myself.
+
+ Test: http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html
+
+ * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::responseReceived): Added
+ a null check.
+
2013-06-20 Roger Fong <[email protected]>
Unreviewed. Roll out part of r150618.
Modified: trunk/Source/WebCore/loader/DocumentLoader.cpp (151811 => 151812)
--- trunk/Source/WebCore/loader/DocumentLoader.cpp 2013-06-20 23:43:04 UTC (rev 151811)
+++ trunk/Source/WebCore/loader/DocumentLoader.cpp 2013-06-21 00:44:38 UTC (rev 151812)
@@ -581,7 +581,10 @@
frame()->document()->enforceSandboxFlags(SandboxOrigin);
if (HTMLFrameOwnerElement* ownerElement = frame()->ownerElement())
ownerElement->dispatchEvent(Event::create(eventNames().loadEvent, false, false));
- cancelMainResourceLoad(frameLoader()->cancelledError(m_request));
+
+ // The load event might have detached this frame. In that case, the load will already have been cancelled during detach.
+ if (frameLoader())
+ cancelMainResourceLoad(frameLoader()->cancelledError(m_request));
return;
}
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes