Title: [148109] tags/Safari-537.35.11/Source/WebCore
- Revision
- 148109
- Author
- [email protected]
- Date
- 2013-04-10 11:03:58 -0700 (Wed, 10 Apr 2013)
Log Message
Merged r147977. <rdar://problem/13604480>
Modified Paths
Diff
Modified: tags/Safari-537.35.11/Source/WebCore/ChangeLog (148108 => 148109)
--- tags/Safari-537.35.11/Source/WebCore/ChangeLog 2013-04-10 17:55:30 UTC (rev 148108)
+++ tags/Safari-537.35.11/Source/WebCore/ChangeLog 2013-04-10 18:03:58 UTC (rev 148109)
@@ -1,3 +1,22 @@
+2013-04-10 Lucas Forschler <[email protected]>
+
+ Merge r147977
+
+ 2013-04-08 Dean Jackson <[email protected]>
+
+ Don't try to remove a non-existent snapshot
+ https://bugs.webkit.org/show_bug.cgi?id=114226
+ <rdar://problem/13604480>
+
+ Reviewed by Darin Adler.
+
+ We don't need to trigger the timer to remove a snapshot
+ if there was never a snapshot displayed.
+
+ * html/HTMLPlugInImageElement.cpp:
+ (WebCore::HTMLPlugInImageElement::setDisplayState): Detect if we're moving from the DisplayingSnapshot state.
+ (WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired): Guard against a missing renderer.
+
2013-04-08 Lucas Forschler <[email protected]>
Merge r147806
Modified: tags/Safari-537.35.11/Source/WebCore/html/HTMLPlugInImageElement.cpp (148108 => 148109)
--- tags/Safari-537.35.11/Source/WebCore/html/HTMLPlugInImageElement.cpp 2013-04-10 17:55:30 UTC (rev 148108)
+++ tags/Safari-537.35.11/Source/WebCore/html/HTMLPlugInImageElement.cpp 2013-04-10 18:03:58 UTC (rev 148109)
@@ -94,16 +94,18 @@
void HTMLPlugInImageElement::setDisplayState(DisplayState state)
{
- HTMLPlugInElement::setDisplayState(state);
- if (displayState() == DisplayingSnapshot)
- m_swapRendererTimer.startOneShot(0);
-
#if PLATFORM(MAC)
- if (displayState() == RestartingWithPendingMouseClick || displayState() == Restarting) {
+ if (state == RestartingWithPendingMouseClick || state == Restarting) {
m_restartedPlugin = true;
- m_removeSnapshotTimer.startOneShot(removeSnapshotTimerDelay);
+ if (displayState() == DisplayingSnapshot)
+ m_removeSnapshotTimer.startOneShot(removeSnapshotTimerDelay);
}
#endif
+
+ HTMLPlugInElement::setDisplayState(state);
+
+ if (state == DisplayingSnapshot)
+ m_swapRendererTimer.startOneShot(0);
}
RenderEmbeddedObject* HTMLPlugInImageElement::renderEmbeddedObject() const
@@ -411,7 +413,8 @@
{
m_snapshotImage = nullptr;
m_restartedPlugin = false;
- renderer()->repaint();
+ if (renderer())
+ renderer()->repaint();
}
static void addPlugInsFromNodeListMatchingPlugInOrigin(HTMLPlugInImageElementList& plugInList, PassRefPtr<NodeList> collection, const String& plugInOrigin, const String& mimeType)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes