summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorRussell Brenner <russellbrenner@google.com>2011-09-15 16:53:35 -0700
committerRussell Brenner <russellbrenner@google.com>2011-09-15 17:13:30 -0700
commit36533130543c7c6adaaaeaba3ccfdd4335741794 (patch)
tree24d425be26ae12cdb4a354cf80df1a7c1d46af5a /Source
parent2c6734b2136615b5e7ce38e9f7ab65d375afaa70 (diff)
downloadexternal_webkit-36533130543c7c6adaaaeaba3ccfdd4335741794.zip
external_webkit-36533130543c7c6adaaaeaba3ccfdd4335741794.tar.gz
external_webkit-36533130543c7c6adaaaeaba3ccfdd4335741794.tar.bz2
Add null checks in getTouchHighlightRects()
Make sure renderer exists before calling it. Bug: 5300238 Change-Id: Ie01bc1aaab3390d7c82be65a9b1d183167677e3c
Diffstat (limited to 'Source')
-rw-r--r--Source/WebKit/android/jni/WebViewCore.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/Source/WebKit/android/jni/WebViewCore.cpp b/Source/WebKit/android/jni/WebViewCore.cpp
index 9b5a6fa..e2193d8 100644
--- a/Source/WebKit/android/jni/WebViewCore.cpp
+++ b/Source/WebKit/android/jni/WebViewCore.cpp
@@ -1729,7 +1729,7 @@ Vector<IntRect> WebViewCore::getTouchHighlightRects(int x, int y, int slop)
Node* eventNode = it->get();
while (eventNode) {
RenderObject* render = eventNode->renderer();
- if (render->isBody() || render->isRenderView())
+ if (render && (render->isBody() || render->isRenderView()))
break;
if (eventNode->supportsFocus()
|| eventNode->hasEventListeners(eventNames().clickEvent)
@@ -1755,7 +1755,7 @@ Vector<IntRect> WebViewCore::getTouchHighlightRects(int x, int y, int slop)
// If the fat point touches everyone, the order in the list should be "b", "d", "c"
// and "a". When we search for the event node for "b", we really don't want "a" as
// in the z-order it is behind everything else.
- if (!render->style()->hasAutoZIndex())
+ if (render && !render->style()->hasAutoZIndex())
break;
eventNode = eventNode->parentNode();
}