summaryrefslogtreecommitdiff
path: root/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/PluginProcess/PluginControllerProxy.cpp')
-rw-r--r--Source/WebKit2/PluginProcess/PluginControllerProxy.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp b/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
index cef3d40a4..74751b2a2 100644
--- a/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
+++ b/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
@@ -143,7 +143,8 @@ void PluginControllerProxy::destroy()
{
ASSERT(m_plugin);
- if (m_pluginDestructionProtectCount) {
+ // FIXME: Consider removing m_pluginDestructionProtectCount and always use inSendSync here.
+ if (m_pluginDestructionProtectCount || m_connection->connection()->inSendSync()) {
// We have plug-in code on the stack so we can't destroy it right now.
// Destroy it later.
m_pluginDestroyTimer.startOneShot(0);
@@ -545,6 +546,11 @@ void PluginControllerProxy::paintEntirePlugin()
paint();
}
+void PluginControllerProxy::supportsSnapshotting(bool& isSupported)
+{
+ isSupported = m_plugin->supportsSnapshotting();
+}
+
void PluginControllerProxy::snapshot(ShareableBitmap::Handle& backingStoreHandle)
{
ASSERT(m_plugin);