Title: [91247] trunk/Source/WebCore
Revision
91247
Author
[email protected]
Date
2011-07-19 03:24:16 -0700 (Tue, 19 Jul 2011)

Log Message

[EFL] Account for the invalid pointer case in WebCore::screenRect()
https://bugs.webkit.org/show_bug.cgi?id=64543

Patch by Raphael Kubo da Costa <[email protected]> on 2011-07-19
Reviewed by Antonio Gomes.

Fix a regression introduced in r88245: it assumes the pointer passed
to screenRect() is always valid.
fast/frames/crash-removed-iframe.html proves this is not always true,
so we need to do some sanity check on the pointer before using it.
No new tests as this has been caught by the current test suite.

* platform/efl/PlatformScreenEfl.cpp:
(WebCore::screenRect):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (91246 => 91247)


--- trunk/Source/WebCore/ChangeLog	2011-07-19 09:51:16 UTC (rev 91246)
+++ trunk/Source/WebCore/ChangeLog	2011-07-19 10:24:16 UTC (rev 91247)
@@ -1,3 +1,19 @@
+2011-07-19  Raphael Kubo da Costa  <[email protected]>
+
+        [EFL] Account for the invalid pointer case in WebCore::screenRect()
+        https://bugs.webkit.org/show_bug.cgi?id=64543
+
+        Reviewed by Antonio Gomes.
+
+        Fix a regression introduced in r88245: it assumes the pointer passed
+        to screenRect() is always valid.
+        fast/frames/crash-removed-iframe.html proves this is not always true,
+        so we need to do some sanity check on the pointer before using it.
+        No new tests as this has been caught by the current test suite.
+
+        * platform/efl/PlatformScreenEfl.cpp:
+        (WebCore::screenRect):
+
 2011-07-19  Robin Qiu  <[email protected]>
 
         Reviewed by Antonio Gomes.

Modified: trunk/Source/WebCore/platform/efl/PlatformScreenEfl.cpp (91246 => 91247)


--- trunk/Source/WebCore/platform/efl/PlatformScreenEfl.cpp	2011-07-19 09:51:16 UTC (rev 91246)
+++ trunk/Source/WebCore/platform/efl/PlatformScreenEfl.cpp	2011-07-19 10:24:16 UTC (rev 91247)
@@ -63,6 +63,9 @@
 
 FloatRect screenRect(Widget* widget)
 {
+    if (!widget)
+        return FloatRect();
+
     int x, y, w, h;
     Evas* e = widget->evas();
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to