Title: [220073] trunk

Diff

Modified: trunk/LayoutTests/ChangeLog (220072 => 220073)


--- trunk/LayoutTests/ChangeLog	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/LayoutTests/ChangeLog	2017-07-31 20:31:05 UTC (rev 220073)
@@ -1,3 +1,17 @@
+2017-07-31  Matt Lewis  <jlew...@apple.com>
+
+        Unreviewed, rolling out r220048.
+
+        This revision caused multiple crashes in fast/images. See
+        webkit.org/b/174990
+
+        Reverted changeset:
+
+        "RenderImageResourceStyleImage::image() should return the
+        nullImage() if the image is not available"
+        https://bugs.webkit.org/show_bug.cgi?id=174874
+        http://trac.webkit.org/changeset/220048
+
 2017-07-31  Per Arne Vollan  <pvol...@apple.com>
 
         Do not mark all web-platform tests as slow, as this increases time spent on layout tests.

Deleted: trunk/LayoutTests/fast/images/image-element-image-content-data-expected.txt (220072 => 220073)


--- trunk/LayoutTests/fast/images/image-element-image-content-data-expected.txt	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/LayoutTests/fast/images/image-element-image-content-data-expected.txt	2017-07-31 20:31:05 UTC (rev 220073)
@@ -1,3 +0,0 @@
-PASS if no crash happens.
-
-

Deleted: trunk/LayoutTests/fast/images/image-element-image-content-data.html (220072 => 220073)


--- trunk/LayoutTests/fast/images/image-element-image-content-data.html	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/LayoutTests/fast/images/image-element-image-content-data.html	2017-07-31 20:31:05 UTC (rev 220073)
@@ -1,20 +0,0 @@
-<style>
-    img {
-        width: 100px;
-        height: 100px;
-        border: 2px solid black;
-        content: -webkit-named-image(apple-pay-logo-white);
-    }
-</style>
-<body>
-    <p>PASS if no crash happens.</p>
-    <img src=''>
-    <script>
-        if (window.testRunner)
-            testRunner.dumpAsText(true);
-        setTimeout(function() {
-            var image = document.querySelector('img');
-            image.remove();
-        }, 0);
-    </script>
-</body>

Modified: trunk/Source/WebCore/ChangeLog (220072 => 220073)


--- trunk/Source/WebCore/ChangeLog	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/ChangeLog	2017-07-31 20:31:05 UTC (rev 220073)
@@ -1,3 +1,17 @@
+2017-07-31  Matt Lewis  <jlew...@apple.com>
+
+        Unreviewed, rolling out r220048.
+
+        This revision caused multiple crashes in fast/images. See
+        webkit.org/b/174990
+
+        Reverted changeset:
+
+        "RenderImageResourceStyleImage::image() should return the
+        nullImage() if the image is not available"
+        https://bugs.webkit.org/show_bug.cgi?id=174874
+        http://trac.webkit.org/changeset/220048
+
 2017-07-31  Sam Weinig  <s...@webkit.org>
 
         Remove unnecessary exceptions from storage code

Modified: trunk/Source/WebCore/css/CSSCrossfadeValue.cpp (220072 => 220073)


--- trunk/Source/WebCore/css/CSSCrossfadeValue.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/css/CSSCrossfadeValue.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -33,6 +33,7 @@
 #include "CachedResourceLoader.h"
 #include "CrossfadeGeneratedImage.h"
 #include "RenderElement.h"
+#include "StyleCachedImage.h"
 #include <wtf/text/StringBuilder.h>
 
 namespace WebCore {

Modified: trunk/Source/WebCore/css/CSSFilterImageValue.cpp (220072 => 220073)


--- trunk/Source/WebCore/css/CSSFilterImageValue.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/css/CSSFilterImageValue.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -33,6 +33,7 @@
 #include "GraphicsContext.h"
 #include "ImageBuffer.h"
 #include "RenderElement.h"
+#include "StyleCachedImage.h"
 #include "StyleResolver.h"
 #include <wtf/text/StringBuilder.h>
 

Modified: trunk/Source/WebCore/page/EventHandler.cpp (220072 => 220073)


--- trunk/Source/WebCore/page/EventHandler.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/page/EventHandler.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -86,6 +86,7 @@
 #include "Settings.h"
 #include "ShadowRoot.h"
 #include "SpatialNavigation.h"
+#include "StyleCachedImage.h"
 #include "TextEvent.h"
 #include "TextIterator.h"
 #include "UserGestureIndicator.h"

Modified: trunk/Source/WebCore/page/PageSerializer.cpp (220072 => 220073)


--- trunk/Source/WebCore/page/PageSerializer.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/page/PageSerializer.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -52,6 +52,7 @@
 #include "MarkupAccumulator.h"
 #include "Page.h"
 #include "RenderElement.h"
+#include "StyleCachedImage.h"
 #include "StyleImage.h"
 #include "StyleProperties.h"
 #include "StyleRule.h"

Modified: trunk/Source/WebCore/rendering/RenderElement.cpp (220072 => 220073)


--- trunk/Source/WebCore/rendering/RenderElement.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/rendering/RenderElement.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -50,6 +50,7 @@
 #include "RenderDescendantIterator.h"
 #include "RenderFlexibleBox.h"
 #include "RenderImage.h"
+#include "RenderImageResourceStyleImage.h"
 #include "RenderInline.h"
 #include "RenderIterator.h"
 #include "RenderLayer.h"

Modified: trunk/Source/WebCore/rendering/RenderImageResource.cpp (220072 => 220073)


--- trunk/Source/WebCore/rendering/RenderImageResource.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/rendering/RenderImageResource.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -32,6 +32,7 @@
 #include "Image.h"
 #include "RenderElement.h"
 #include "RenderImage.h"
+#include "RenderImageResourceStyleImage.h"
 
 namespace WebCore {
 

Modified: trunk/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp (220072 => 220073)


--- trunk/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -30,6 +30,7 @@
 
 #include "CachedImage.h"
 #include "RenderElement.h"
+#include "StyleCachedImage.h"
 
 namespace WebCore {
 
@@ -47,7 +48,7 @@
     RenderImageResource::initialize(renderer);
 
     if (m_styleImage->isCachedImage())
-        m_cachedImage = m_styleImage->cachedImage();
+        m_cachedImage = m_styleImage.get().cachedImage();
 
     m_styleImage->addClient(m_renderer);
 }
@@ -55,19 +56,17 @@
 void RenderImageResourceStyleImage::shutdown()
 {
     ASSERT(m_renderer);
-    image()->stopAnimation();
     m_styleImage->removeClient(m_renderer);
-    m_cachedImage = nullptr;
+    if (m_cachedImage) {
+        image()->stopAnimation();
+        m_cachedImage = nullptr;
+    }
 }
 
 RefPtr<Image> RenderImageResourceStyleImage::image(const IntSize& size) const
 {
     // Generated content may trigger calls to image() while we're still pending, don't assert but gracefully exit.
-    if (m_styleImage->isPending())
-        return &Image::nullImage();
-    if (auto image = m_styleImage->image(m_renderer, size))
-        return image;
-    return &Image::nullImage();
+    return !m_styleImage->isPending() ? m_styleImage->image(m_renderer, size) : &Image::nullImage();
 }
 
 void RenderImageResourceStyleImage::setContainerSizeForRenderer(const IntSize& size)

Modified: trunk/Source/WebCore/rendering/style/ContentData.cpp (220072 => 220073)


--- trunk/Source/WebCore/rendering/style/ContentData.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/rendering/style/ContentData.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -25,6 +25,7 @@
 #include "RenderCounter.h"
 #include "RenderImage.h"
 #include "RenderImageResource.h"
+#include "RenderImageResourceStyleImage.h"
 #include "RenderQuote.h"
 #include "RenderStyle.h"
 #include "RenderTextFragment.h"

Modified: trunk/Source/WebCore/rendering/style/StyleCachedImage.cpp (220072 => 220073)


--- trunk/Source/WebCore/rendering/style/StyleCachedImage.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/rendering/style/StyleCachedImage.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -29,6 +29,7 @@
 #include "CSSImageValue.h"
 #include "CachedImage.h"
 #include "RenderElement.h"
+#include "RenderView.h"
 
 namespace WebCore {
 

Modified: trunk/Source/WebCore/style/StylePendingResources.cpp (220072 => 220073)


--- trunk/Source/WebCore/style/StylePendingResources.cpp	2017-07-31 18:36:54 UTC (rev 220072)
+++ trunk/Source/WebCore/style/StylePendingResources.cpp	2017-07-31 20:31:05 UTC (rev 220073)
@@ -34,6 +34,7 @@
 #include "Document.h"
 #include "RenderStyle.h"
 #include "SVGURIReference.h"
+#include "StyleCachedImage.h"
 #include "StyleGeneratedImage.h"
 #include "TransformFunctions.h"
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to