summaryrefslogtreecommitdiffstats
path: root/WebKit
diff options
context:
space:
mode:
authorGrace Kloba <klobag@google.com>2010-01-20 18:19:19 -0800
committerGrace Kloba <klobag@google.com>2010-01-20 18:19:19 -0800
commit72acb46d81f6f3c7015109c925762dcc7fa12802 (patch)
tree4abcb31c03323aa32bb87d4bfc9dcb207d2a8ad1 /WebKit
parent1f15f3a9f6dc2a169bbd160e2e1abb161f9927d9 (diff)
downloadexternal_webkit-72acb46d81f6f3c7015109c925762dcc7fa12802.zip
external_webkit-72acb46d81f6f3c7015109c925762dcc7fa12802.tar.gz
external_webkit-72acb46d81f6f3c7015109c925762dcc7fa12802.tar.bz2
Fix the crash of exiting full screen by checking null.
When we exit full screen, we place the embedded view on the screen, so we need to destroy it again in the destructor
Diffstat (limited to 'WebKit')
-rw-r--r--WebKit/android/jni/WebViewCore.cpp3
-rw-r--r--WebKit/android/plugins/PluginWidgetAndroid.cpp3
2 files changed, 4 insertions, 2 deletions
diff --git a/WebKit/android/jni/WebViewCore.cpp b/WebKit/android/jni/WebViewCore.cpp
index a1f4354..8f5cc45 100644
--- a/WebKit/android/jni/WebViewCore.cpp
+++ b/WebKit/android/jni/WebViewCore.cpp
@@ -3288,7 +3288,8 @@ static void FullScreenPluginHidden(JNIEnv* env, jobject obj, jint npp)
{
WebViewCore* viewImpl = GET_NATIVE_VIEW(env, obj);
PluginWidgetAndroid* plugin = viewImpl->getPluginWidget((NPP)npp);
- plugin->exitFullScreen(false);
+ if (plugin)
+ plugin->exitFullScreen(false);
}
static WebCore::IntRect jrect_to_webrect(JNIEnv* env, jobject obj)
diff --git a/WebKit/android/plugins/PluginWidgetAndroid.cpp b/WebKit/android/plugins/PluginWidgetAndroid.cpp
index 7a4b9a3..ac668d7 100644
--- a/WebKit/android/plugins/PluginWidgetAndroid.cpp
+++ b/WebKit/android/plugins/PluginWidgetAndroid.cpp
@@ -65,7 +65,8 @@ PluginWidgetAndroid::~PluginWidgetAndroid() {
m_core->removePlugin(this);
if (m_isFullScreen) {
exitFullScreen(true);
- } else if (m_embeddedView) {
+ }
+ if (m_embeddedView) {
m_core->destroySurface(m_embeddedView);
}
}