Commit a207da3a authored by andersca@apple.com's avatar andersca@apple.com

2011-03-26 Anders Carlsson <andersca@apple.com>

        Reviewed by Sam Weinig.

        Graphic corruption appeared with Silverlight contents while resizing window
        https://bugs.webkit.org/show_bug.cgi?id=57167
        <rdar://problem/9094052>

        Pass DispatchMessageEvenWhenWaitingForSyncReply when sending GeometryDidChange messages since that will guarantee
        that those messages will be handled before PaintEntirePlugin messages which prevents the PaintEntirePlugin handler from
        painting into the wrong backing store.

        * WebProcess/Plugins/PluginProxy.cpp:
        (WebKit::PluginProxy::geometryDidChange):


git-svn-id: svn://svn.chromium.org/blink/trunk@82048 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent d56a6098
2011-03-26 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Graphic corruption appeared with Silverlight contents while resizing window
https://bugs.webkit.org/show_bug.cgi?id=57167
<rdar://problem/9094052>
Pass DispatchMessageEvenWhenWaitingForSyncReply when sending GeometryDidChange messages since that will guarantee
that those messages will be handled before PaintEntirePlugin messages which prevents the PaintEntirePlugin handler from
painting into the wrong backing store.
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::geometryDidChange):
2011-03-26 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
......
......@@ -176,7 +176,7 @@ void PluginProxy::geometryDidChange(const IntRect& frameRect, const IntRect& cli
if (!needsBackingStore()) {
SharedMemory::Handle pluginBackingStoreHandle;
m_connection->connection()->send(Messages::PluginControllerProxy::GeometryDidChange(frameRect, clipRect, pluginBackingStoreHandle), m_pluginInstanceID);
m_connection->connection()->send(Messages::PluginControllerProxy::GeometryDidChange(frameRect, clipRect, pluginBackingStoreHandle), m_pluginInstanceID, CoreIPC::DispatchMessageEvenWhenWaitingForSyncReply);
return;
}
......@@ -202,14 +202,14 @@ void PluginProxy::geometryDidChange(const IntRect& frameRect, const IntRect& cli
// Create a handle to the plug-in backing store so we can send it over.
if (!m_pluginBackingStore->createHandle(pluginBackingStoreHandle)) {
m_pluginBackingStore.clear();
m_pluginBackingStore = nullptr;
return;
}
m_pluginBackingStoreContainsValidData = false;
}
m_connection->connection()->send(Messages::PluginControllerProxy::GeometryDidChange(frameRect, clipRect, pluginBackingStoreHandle), m_pluginInstanceID);
m_connection->connection()->send(Messages::PluginControllerProxy::GeometryDidChange(frameRect, clipRect, pluginBackingStoreHandle), m_pluginInstanceID, CoreIPC::DispatchMessageEvenWhenWaitingForSyncReply);
}
void PluginProxy::frameDidFinishLoading(uint64_t requestID)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment