When a mask image changes, ensure that elements
that use that mask image are repainted correctly.

<https://bugs.webkit.org/show_bug.cgi?id=19954>

Reviewed by Dave Hyatt

* manual-tests/canvas-mask-redraw.html
  Manual testcase
* rendering/RenderBox.cpp:
  (WebCore::RenderBox::imageChanged):
  (WebCore::RenderBox::repaintLayerRectsForImage):
* rendering/RenderBox.h:
  Loop through background layers and mask layers, and
  if this image is used in a layer, compute a repaint
  rect and repaint.
* rendering/RenderImage.cpp:
  (WebCore::RenderImage::imageChanged):
  If this image has a mask, call the base class method.
* rendering/RenderObject.cpp:
  Remove a bogus 'return'.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35101 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/rendering/RenderImage.cpp b/WebCore/rendering/RenderImage.cpp
index abb31fc..7e2c7fc 100644
--- a/WebCore/rendering/RenderImage.cpp
+++ b/WebCore/rendering/RenderImage.cpp
@@ -249,7 +249,7 @@
     if (documentBeingDestroyed())
         return;
 
-    if (hasBoxDecorations())
+    if (hasBoxDecorations() || hasMask())
         RenderReplaced::imageChanged(newImage);
     
     if (newImage != imagePtr() || !newImage)