Add explicit clip to compositing display items

SkCanvas::saveLayer(Alpha) which is indirectly generated by
CompositingDisplayItem takes an optional bounds as a hint for the size
of the backing that is used as an indirect offscreen texture for the
saveLayer.  This acts as an implicit clip, but Skia is free to make
this as large as possible or drop the clip.  PaintOpBuffer in particular
has some optimizations that sometimes drop the bounds when trying to
fold together saveLayer/draw/restore into a single draw with alpha.

This patch makes it so that any CompositingDisplayItem that provides
a clip has its content explicitly clipped.  This prevents optimizations
inside of PaintOpBuffer that would remove the save/restore generated
by the CompositingDisplayItem but prevents any accidental painting
outside of display item bounds.

TBR=enne@chromium.org

(cherry picked from commit e3d9eee91f3dfe5503bde5f3f4fc776e1552f857)

Bug: 750252
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ic651c35e1ce865f3008dd345952a6fbc97d94740
Reviewed-on: https://chromium-review.googlesource.com/596503
Commit-Queue: enne <enne@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#491915}
Reviewed-on: https://chromium-review.googlesource.com/612454
Reviewed-by: enne <enne@chromium.org>
Cr-Commit-Position: refs/branch-heads/3163@{#491}
Cr-Branched-From: ff259bab28b35d242e10186cd63af7ed404fae0d-refs/heads/master@{#488528}
diff --git a/cc/blink/BUILD.gn b/cc/blink/BUILD.gn
index 27fd6c5..31c0548 100644
--- a/cc/blink/BUILD.gn
+++ b/cc/blink/BUILD.gn
@@ -49,6 +49,7 @@
 
 cc_test("cc_blink_unittests") {
   sources = [
+    "web_display_item_list_impl_unittest.cc",
     "web_layer_impl_fixed_bounds_unittest.cc",
 
     # Setup.
@@ -63,6 +64,7 @@
     "//base/third_party/dynamic_annotations",
     "//cc",
     "//cc:test_support",
+    "//cc/paint",
     "//skia",
     "//testing/gmock",
     "//testing/gtest",
diff --git a/cc/blink/web_display_item_list_impl.cc b/cc/blink/web_display_item_list_impl.cc
index 3266b5f..f2125e6 100644
--- a/cc/blink/web_display_item_list_impl.cc
+++ b/cc/blink/web_display_item_list_impl.cc
@@ -121,6 +121,9 @@
   if (xfermode == SkBlendMode::kSrcOver && !color_filter) {
     cc::PaintOpBuffer* buffer = display_item_list_->StartPaint();
     buffer->push<cc::SaveLayerAlphaOp>(bounds, alpha, false);
+    if (bounds) {
+      buffer->push<cc::ClipRectOp>(*bounds, SkClipOp::kIntersect, false);
+    }
     display_item_list_->EndPaintOfPairedBegin();
     return;
   }
@@ -132,6 +135,9 @@
 
   cc::PaintOpBuffer* buffer = display_item_list_->StartPaint();
   buffer->push<cc::SaveLayerOp>(bounds, &flags);
+  if (bounds) {
+    buffer->push<cc::ClipRectOp>(*bounds, SkClipOp::kIntersect, false);
+  }
   display_item_list_->EndPaintOfPairedBegin();
 }
 
diff --git a/cc/blink/web_display_item_list_impl.h b/cc/blink/web_display_item_list_impl.h
index 9221c683..c8da1b5 100644
--- a/cc/blink/web_display_item_list_impl.h
+++ b/cc/blink/web_display_item_list_impl.h
@@ -32,11 +32,11 @@
 
 namespace cc_blink {
 
-class WebDisplayItemListImpl : public blink::WebDisplayItemList {
+class CC_BLINK_EXPORT WebDisplayItemListImpl
+    : public blink::WebDisplayItemList {
  public:
-  CC_BLINK_EXPORT WebDisplayItemListImpl();
-  CC_BLINK_EXPORT explicit WebDisplayItemListImpl(
-      cc::DisplayItemList* display_list);
+  WebDisplayItemListImpl();
+  explicit WebDisplayItemListImpl(cc::DisplayItemList* display_list);
   ~WebDisplayItemListImpl() override;
 
   // blink::WebDisplayItemList implementation.
diff --git a/cc/blink/web_display_item_list_impl_unittest.cc b/cc/blink/web_display_item_list_impl_unittest.cc
new file mode 100644
index 0000000..1cdabf3
--- /dev/null
+++ b/cc/blink/web_display_item_list_impl_unittest.cc
@@ -0,0 +1,91 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "cc/blink/web_display_item_list_impl.h"
+#include "base/strings/stringprintf.h"
+#include "cc/paint/display_item_list.h"
+#include "cc/paint/paint_op_buffer.h"
+#include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/WebKit/public/platform/WebFloatPoint.h"
+
+namespace cc_blink {
+namespace {
+
+// SkCanvas::saveLayer(Alpha) allows for an optional bounds which is a hint
+// for the backing size to use for the indirect buffer.  It is not really
+// a clip though, as Skia is allowed to use any size buffer it wants.
+// Additionally, PaintOpBuffer can drop the bounds when folding
+// save/draw/restore into a single draw-with-alpha.  However, in some cases
+// calling code (SVGMask) is drawing unclipped items which really need
+// a clip to not pollute the rest of the painted content with their draw
+// commands.  Therefore, this tests that when providing bounds to
+// AppendCompositingItem that a clip is inserted.
+TEST(WebDisplayItemListImpl, ClipWhenCompositing) {
+  // Test with two different blend modes to differentiate the saveLayer vs
+  // saveLayerAlpha logic inside of AppendCompositingItem;
+  SkBlendMode blend_modes[] = {SkBlendMode::kSrc, SkBlendMode::kSrcOver};
+  for (size_t i = 0; i < arraysize(blend_modes); ++i) {
+    static constexpr int size = 20;
+    static constexpr SkColor background_color = SK_ColorMAGENTA;
+    static constexpr SkColor clip_color = SK_ColorYELLOW;
+
+    blink::WebRect full_bounds(0, 0, size, size);
+    blink::WebRect clip_bounds(5, 3, 13, 9);
+    SkRect sk_clip_bounds = SkRect::MakeXYWH(
+        clip_bounds.x, clip_bounds.y, clip_bounds.width, clip_bounds.height);
+    SkIRect clip_irect = sk_clip_bounds.roundOut();
+
+    auto cc_list = make_scoped_refptr(new cc::DisplayItemList);
+    cc_blink::WebDisplayItemListImpl web_list(cc_list.get());
+
+    // drawColor(background color)
+    // saveLayer(should clip)
+    //   drawColor(clip color)
+    // end
+    auto background_record = sk_make_sp<cc::PaintRecord>();
+    background_record->push<cc::DrawColorOp>(background_color,
+                                             SkBlendMode::kSrcOver);
+    web_list.AppendDrawingItem(full_bounds, background_record, full_bounds);
+    web_list.AppendCompositingItem(1.f, blend_modes[i], &sk_clip_bounds,
+                                   nullptr);
+    auto clip_record = sk_make_sp<cc::PaintRecord>();
+    clip_record->push<cc::DrawColorOp>(clip_color, SkBlendMode::kSrcOver);
+    web_list.AppendDrawingItem(full_bounds, clip_record, full_bounds);
+    web_list.AppendEndCompositingItem();
+    cc_list->Finalize();
+
+    SkBitmap bitmap;
+    bitmap.allocPixels(SkImageInfo::MakeN32Premul(size, size));
+    SkCanvas canvas(bitmap);
+    canvas.drawColor(SK_ColorGRAY);
+
+    cc_list->Raster(&canvas);
+    uint8_t* pixels = static_cast<uint8_t*>(bitmap.getPixels());
+    size_t row_bytes = size * 4;
+    for (size_t y = 0; y < size; ++y) {
+      size_t y_offset = y * row_bytes;
+      for (size_t x = 0; x < size; ++x) {
+        size_t x_offset = x * 4;
+        uint8_t* pixel = &pixels[y_offset + x_offset];
+        SCOPED_TRACE(
+            base::StringPrintf("x(%zd) y(%zd) mode(%d)", x, y, blend_modes[i]));
+
+        if (clip_irect.contains(x, y)) {
+          EXPECT_EQ(SkColorGetR(clip_color), pixel[SK_R32_SHIFT / 8]);
+          EXPECT_EQ(SkColorGetG(clip_color), pixel[SK_G32_SHIFT / 8]);
+          EXPECT_EQ(SkColorGetB(clip_color), pixel[SK_B32_SHIFT / 8]);
+          EXPECT_EQ(SkColorGetA(clip_color), pixel[SK_A32_SHIFT / 8]);
+        } else {
+          EXPECT_EQ(SkColorGetR(background_color), pixel[SK_R32_SHIFT / 8]);
+          EXPECT_EQ(SkColorGetG(background_color), pixel[SK_G32_SHIFT / 8]);
+          EXPECT_EQ(SkColorGetB(background_color), pixel[SK_B32_SHIFT / 8]);
+          EXPECT_EQ(SkColorGetA(background_color), pixel[SK_A32_SHIFT / 8]);
+        }
+      }
+    }
+  }
+}
+
+}  // namespace
+}  // namespace cc_blink
diff --git a/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 b/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
index 6b906c36..5150d870 100644
--- a/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
+++ b/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
@@ -1741,6 +1741,11 @@
 Bug(none) compositing/overflow/ancestor-overflow-layer-of-sticky-child-of-compositing-container.html [ Failure ]
 Bug(none) fast/block/float/float-change-composited-scrolling.html [ Failure ]
 
+Bug(none) compositing/sibling-positioning.html [ Failure ]
+Bug(none) fast/dynamic/anonymous-block-layer-lost.html [ Failure ]
+Bug(none) fast/layers/opacity-stacking.html [ Failure ]
+Bug(none) paint/invalidation/column-float-under-stacked-inline.html [ Failure ]
+
 # See comment regarding this test in NeverFixTests. It also fails for other
 # reasons, in particular that the composited layerization algorithm provides
 # different results.
diff --git a/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.html b/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.html
deleted file mode 100644
index d4c112a..0000000
--- a/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<div id='target'></div>
-<style type="text/css">
-  #target {
-    background-color: black;
-    width: 100px;
-    height: 100px;
-    opacity: 0.75;
-  }
-</style>
diff --git a/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.png b/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.png
new file mode 100644
index 0000000..464144c
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.txt b/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.txt
new file mode 100644
index 0000000..0d780a7
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/animations/timing/animation-duration-infinite-expected.txt
@@ -0,0 +1,7 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x116
+  LayoutBlockFlow {HTML} at (0,0) size 800x116
+    LayoutBlockFlow {BODY} at (8,8) size 784x100
+layer at (8,8) size 100x100 transparent
+  LayoutBlockFlow {DIV} at (0,0) size 100x100 [bgcolor=#000000]
diff --git a/third_party/WebKit/LayoutTests/fast/dynamic/anonymous-block-layer-lost-expected.png b/third_party/WebKit/LayoutTests/fast/dynamic/anonymous-block-layer-lost-expected.png
index 16b3506..f87d11b 100644
--- a/third_party/WebKit/LayoutTests/fast/dynamic/anonymous-block-layer-lost-expected.png
+++ b/third_party/WebKit/LayoutTests/fast/dynamic/anonymous-block-layer-lost-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/fast/layers/opacity-stacking-expected.png b/third_party/WebKit/LayoutTests/fast/layers/opacity-stacking-expected.png
index 7832ca71..8f9b429 100644
--- a/third_party/WebKit/LayoutTests/fast/layers/opacity-stacking-expected.png
+++ b/third_party/WebKit/LayoutTests/fast/layers/opacity-stacking-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/paint/invalidation/column-float-under-stacked-inline-expected.png b/third_party/WebKit/LayoutTests/paint/invalidation/column-float-under-stacked-inline-expected.png
index c6cabcbb..a92e6a8 100644
--- a/third_party/WebKit/LayoutTests/paint/invalidation/column-float-under-stacked-inline-expected.png
+++ b/third_party/WebKit/LayoutTests/paint/invalidation/column-float-under-stacked-inline-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/paint/invalidation/compositing/fixed-pos-inside-composited-intermediate-layer-expected.png b/third_party/WebKit/LayoutTests/paint/invalidation/compositing/fixed-pos-inside-composited-intermediate-layer-expected.png
index 28c4a50..120ca76e 100644
--- a/third_party/WebKit/LayoutTests/paint/invalidation/compositing/fixed-pos-inside-composited-intermediate-layer-expected.png
+++ b/third_party/WebKit/LayoutTests/paint/invalidation/compositing/fixed-pos-inside-composited-intermediate-layer-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png b/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
deleted file mode 100644
index 2b376f46..0000000
--- a/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
+++ /dev/null
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-bounce-expected.png b/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-bounce-expected.png
index 7c45db8b..5c0f622 100644
--- a/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-bounce-expected.png
+++ b/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-bounce-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/compositing/sibling-positioning-expected.png b/third_party/WebKit/LayoutTests/platform/linux/compositing/sibling-positioning-expected.png
index 845fbe1..98c459b 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/compositing/sibling-positioning-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/compositing/sibling-positioning-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/clip/nestedTransparencyClip-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/clip/nestedTransparencyClip-expected.png
index a0f408c2..a64b907 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/fast/clip/nestedTransparencyClip-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/fast/clip/nestedTransparencyClip-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/css/ZeroOpacityLayers-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/css/ZeroOpacityLayers-expected.png
index 3e7837bc..b34f30f 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/fast/css/ZeroOpacityLayers-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/fast/css/ZeroOpacityLayers-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/css/ZeroOpacityLayers2-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/css/ZeroOpacityLayers2-expected.png
index 8512da2..b49aa19 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/fast/css/ZeroOpacityLayers2-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/fast/css/ZeroOpacityLayers2-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/layers/remove-layer-with-nested-stacking-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/layers/remove-layer-with-nested-stacking-expected.png
index 6b72702..d6dbea8 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/fast/layers/remove-layer-with-nested-stacking-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/fast/layers/remove-layer-with-nested-stacking-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/multicol/composited-with-child-layer-in-next-column-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/multicol/composited-with-child-layer-in-next-column-expected.png
index fdf7cf9..84b3405c 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/fast/multicol/composited-with-child-layer-in-next-column-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/fast/multicol/composited-with-child-layer-in-next-column-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/reflections/opacity-reflection-transform-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/reflections/opacity-reflection-transform-expected.png
index a4959a1d..4cb5bc6 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/fast/reflections/opacity-reflection-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/fast/reflections/opacity-reflection-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/table/multiple-captions-display-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/table/multiple-captions-display-expected.png
index 95337db..90f0dab 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/fast/table/multiple-captions-display-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/fast/table/multiple-captions-display-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/text/complex-text-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/text/complex-text-opacity-expected.png
index 8b5ff926..a4def48 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/fast/text/complex-text-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/fast/text/complex-text-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-child-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-child-move-after-scroll-expected.png
index 62defa6d..e6e93e5 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-child-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-child-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
index 62defa6d..e6e93e5 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-expected.png b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-expected.png
index 4164322..dd57984 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-move-after-scroll-expected.png
index 62defa6d..e6e93e5 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/fixed-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
index 20fd136..d001569 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
index c88611c..b547e78 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/use-detach-expected.png b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/use-detach-expected.png
index 84a7fe53..5b0ed95 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/use-detach-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/use-detach-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
index 357027ea..f348f0bd 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
index 1badfab..d9d53ff 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textAnchor-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textAnchor-expected.png
index 5b8643e2..c263257 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textAnchor-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textAnchor-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textFeatures-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textFeatures-expected.png
index bd3c3ec76..e7a2fb2 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textFeatures-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textFeatures-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textProperties-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textProperties-expected.png
index 57a9e09..69e91b7 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textProperties-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textProperties-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/clip-mask-negative-scale-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/clip-mask-negative-scale-expected.png
index a1a8854..72ef83c 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/clip-mask-negative-scale-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/clip-mask-negative-scale-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/container-opacity-clip-viewBox-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/container-opacity-clip-viewBox-expected.png
index 875f74ee..1afd76d 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/container-opacity-clip-viewBox-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/container-opacity-clip-viewBox-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/dominant-baseline-hanging-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/dominant-baseline-hanging-expected.png
index d9cc897..813d4f3 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/dominant-baseline-hanging-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/dominant-baseline-hanging-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/text-image-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/text-image-opacity-expected.png
index 68e5189..935fff6 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/text-image-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/text-image-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-modify-container-in-target-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-modify-container-in-target-expected.png
index 728b263..188918b 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-modify-container-in-target-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-modify-container-in-target-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-modify-target-container-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-modify-target-container-expected.png
index 2171541..16615c3 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-modify-target-container-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-modify-target-container-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-g-containing-use-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-g-containing-use-expected.png
index a9b716a..a9c4a082 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-g-containing-use-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-g-containing-use-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-g-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-g-expected.png
index 4a5595b..6be19ce 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-g-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-g-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-use-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-use-expected.png
index 4a5595b..6be19ce 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-use-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-on-use-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-transform-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-transform-expected.png
index 1306f23..da55240 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/custom/use-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/transforms/text-with-mask-with-svg-transform-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/transforms/text-with-mask-with-svg-transform-expected.png
index 1f6901bf4..0e6e5ac 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/transforms/text-with-mask-with-svg-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/transforms/text-with-mask-with-svg-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/svg/zoom/page/zoom-mask-with-percentages-expected.png b/third_party/WebKit/LayoutTests/platform/linux/svg/zoom/page/zoom-mask-with-percentages-expected.png
index ec3f068..eb576f0 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/svg/zoom/page/zoom-mask-with-percentages-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/svg/zoom/page/zoom-mask-with-percentages-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/transforms/2d/hindi-rotated-expected.png b/third_party/WebKit/LayoutTests/platform/linux/transforms/2d/hindi-rotated-expected.png
index 6f98684..dbef225 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/transforms/2d/hindi-rotated-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/transforms/2d/hindi-rotated-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/transforms/transform-on-inline-expected.png b/third_party/WebKit/LayoutTests/platform/linux/transforms/transform-on-inline-expected.png
index 2b53a5d..02332e7 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/transforms/transform-on-inline-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/transforms/transform-on-inline-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/transforms/transform-table-row-expected.png b/third_party/WebKit/LayoutTests/platform/linux/transforms/transform-table-row-expected.png
index aaa513bf..e288cd0 100644
--- a/third_party/WebKit/LayoutTests/platform/linux/transforms/transform-table-row-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/linux/transforms/transform-table-row-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png b/third_party/WebKit/LayoutTests/platform/linux/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png
new file mode 100644
index 0000000..90f0dab
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/linux/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/fast/text/complex-text-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/fast/text/complex-text-opacity-expected.png
index 147f795..e5d918b 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/fast/text/complex-text-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/fast/text/complex-text-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/paint/invalidation/svg/use-detach-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/paint/invalidation/svg/use-detach-expected.png
index e351886..216cd93 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/paint/invalidation/svg/use-detach-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/paint/invalidation/svg/use-detach-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/svg/custom/dominant-baseline-hanging-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/svg/custom/dominant-baseline-hanging-expected.png
index 7d90d18..7e92be7 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/svg/custom/dominant-baseline-hanging-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/svg/custom/dominant-baseline-hanging-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/transforms/2d/hindi-rotated-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/transforms/2d/hindi-rotated-expected.png
index 0acea10..206f1a85 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.10/transforms/2d/hindi-rotated-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.10/transforms/2d/hindi-rotated-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/fast/text/complex-text-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/fast/text/complex-text-opacity-expected.png
index e468e8c..b1bd2a2 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/fast/text/complex-text-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/fast/text/complex-text-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
index 3fe5626..ee611d4 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-child-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-child-move-after-scroll-expected.png
index bb09e0fe..13febfa 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-child-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-child-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
index bb09e0fe..13febfa 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-expected.png
index 53efe2c..2314a23 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-move-after-scroll-expected.png
index bb09e0fe..13febfa 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/fixed-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
index 2faa9cd..0c0d01b 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/svg/zoom/page/zoom-mask-with-percentages-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/svg/zoom/page/zoom-mask-with-percentages-expected.png
index 0ef3b49..72b878c 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/svg/zoom/page/zoom-mask-with-percentages-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/svg/zoom/page/zoom-mask-with-percentages-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/transforms/2d/hindi-rotated-expected.png b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/transforms/2d/hindi-rotated-expected.png
index 84b89da..d6554a2 100644
--- a/third_party/WebKit/LayoutTests/platform/mac-mac10.9/transforms/2d/hindi-rotated-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac-mac10.9/transforms/2d/hindi-rotated-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/compositing/sibling-positioning-expected.png b/third_party/WebKit/LayoutTests/platform/mac/compositing/sibling-positioning-expected.png
index 164eaf7c..e1438f4 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/compositing/sibling-positioning-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/compositing/sibling-positioning-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/css/ZeroOpacityLayers-expected.png b/third_party/WebKit/LayoutTests/platform/mac/fast/css/ZeroOpacityLayers-expected.png
index 3b0398c3..439ba135 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/fast/css/ZeroOpacityLayers-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/fast/css/ZeroOpacityLayers-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/css/ZeroOpacityLayers2-expected.png b/third_party/WebKit/LayoutTests/platform/mac/fast/css/ZeroOpacityLayers2-expected.png
index 55200b4..0132876 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/fast/css/ZeroOpacityLayers2-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/fast/css/ZeroOpacityLayers2-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/layers/remove-layer-with-nested-stacking-expected.png b/third_party/WebKit/LayoutTests/platform/mac/fast/layers/remove-layer-with-nested-stacking-expected.png
index 415932d..2cfb9d0 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/fast/layers/remove-layer-with-nested-stacking-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/fast/layers/remove-layer-with-nested-stacking-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/reflections/opacity-reflection-transform-expected.png b/third_party/WebKit/LayoutTests/platform/mac/fast/reflections/opacity-reflection-transform-expected.png
index 305e580..161c887 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/fast/reflections/opacity-reflection-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/fast/reflections/opacity-reflection-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/table/multiple-captions-display-expected.png b/third_party/WebKit/LayoutTests/platform/mac/fast/table/multiple-captions-display-expected.png
index 6e9be25..40ad4e6 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/fast/table/multiple-captions-display-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/fast/table/multiple-captions-display-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/text/complex-text-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/mac/fast/text/complex-text-opacity-expected.png
index 30b2ae7..6311434 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/fast/text/complex-text-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/fast/text/complex-text-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
index 3e9d80d..d951e2bb 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-child-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-child-move-after-scroll-expected.png
index 04c24bb..5fbed08 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-child-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-child-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
index 04c24bb..5fbed08 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-expected.png b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-expected.png
index c42d6c2..34a9849 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-move-after-scroll-expected.png
index 04c24bb..5fbed08 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/fixed-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
index 1d26551..8a85564 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
index 9194b38..95f8758 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/use-detach-expected.png b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/use-detach-expected.png
index f90ee13..f7d9a59 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/use-detach-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/use-detach-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
index d3f55df..6eb67354 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
index 6281873..0c51a82 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textAnchor-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textAnchor-expected.png
index cac6152..7bae05d 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textAnchor-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textAnchor-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textFeatures-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textFeatures-expected.png
index 878e749..b4b029d 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textFeatures-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textFeatures-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textProperties-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textProperties-expected.png
index d96af9c..43f6f936 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textProperties-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textProperties-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/clip-mask-negative-scale-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/clip-mask-negative-scale-expected.png
index d51eb86..f7fa1f06 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/clip-mask-negative-scale-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/clip-mask-negative-scale-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/container-opacity-clip-viewBox-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/container-opacity-clip-viewBox-expected.png
index 92a9815..c52acdc 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/container-opacity-clip-viewBox-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/container-opacity-clip-viewBox-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/dominant-baseline-hanging-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/dominant-baseline-hanging-expected.png
index a4260a7..1daf699 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/dominant-baseline-hanging-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/dominant-baseline-hanging-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/text-image-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/text-image-opacity-expected.png
index 9f756c1..183ff743 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/text-image-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/text-image-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-modify-container-in-target-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-modify-container-in-target-expected.png
index 8d73aa6..55857de 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-modify-container-in-target-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-modify-container-in-target-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-modify-target-container-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-modify-target-container-expected.png
index e752c114..152b1fd 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-modify-target-container-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-modify-target-container-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-g-containing-use-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-g-containing-use-expected.png
index c9ba215c..cde12bc 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-g-containing-use-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-g-containing-use-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-g-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-g-expected.png
index ea32bd1..ff435a5 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-g-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-g-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-use-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-use-expected.png
index ea32bd1..ff435a5 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-use-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-on-use-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-transform-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-transform-expected.png
index f1b93a71..7bd5583 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/custom/use-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png
index af030f6..b324e70 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/svg/zoom/page/zoom-mask-with-percentages-expected.png b/third_party/WebKit/LayoutTests/platform/mac/svg/zoom/page/zoom-mask-with-percentages-expected.png
index d42a0252..cca1da5 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/svg/zoom/page/zoom-mask-with-percentages-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/svg/zoom/page/zoom-mask-with-percentages-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/transforms/2d/hindi-rotated-expected.png b/third_party/WebKit/LayoutTests/platform/mac/transforms/2d/hindi-rotated-expected.png
index 70f55312..066a0fc 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/transforms/2d/hindi-rotated-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/transforms/2d/hindi-rotated-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/transforms/transform-on-inline-expected.png b/third_party/WebKit/LayoutTests/platform/mac/transforms/transform-on-inline-expected.png
index 52e37ed..5e3f905f 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/transforms/transform-on-inline-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/transforms/transform-on-inline-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/transforms/transform-table-row-expected.png b/third_party/WebKit/LayoutTests/platform/mac/transforms/transform-table-row-expected.png
index 36d5bf8..61d19bf 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/transforms/transform-table-row-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/mac/transforms/transform-table-row-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/mac/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png b/third_party/WebKit/LayoutTests/platform/mac/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png
new file mode 100644
index 0000000..40ad4e6
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/mac/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/compositing/sibling-positioning-expected.png b/third_party/WebKit/LayoutTests/platform/win/compositing/sibling-positioning-expected.png
index c09020b..7a28766 100644
--- a/third_party/WebKit/LayoutTests/platform/win/compositing/sibling-positioning-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/compositing/sibling-positioning-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/css/ZeroOpacityLayers-expected.png b/third_party/WebKit/LayoutTests/platform/win/fast/css/ZeroOpacityLayers-expected.png
index a5df9bb..31a560e 100644
--- a/third_party/WebKit/LayoutTests/platform/win/fast/css/ZeroOpacityLayers-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/fast/css/ZeroOpacityLayers-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/css/ZeroOpacityLayers2-expected.png b/third_party/WebKit/LayoutTests/platform/win/fast/css/ZeroOpacityLayers2-expected.png
index 5358858..c5af46c 100644
--- a/third_party/WebKit/LayoutTests/platform/win/fast/css/ZeroOpacityLayers2-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/fast/css/ZeroOpacityLayers2-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/layers/remove-layer-with-nested-stacking-expected.png b/third_party/WebKit/LayoutTests/platform/win/fast/layers/remove-layer-with-nested-stacking-expected.png
index cf0cddf8..cebda39 100644
--- a/third_party/WebKit/LayoutTests/platform/win/fast/layers/remove-layer-with-nested-stacking-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/fast/layers/remove-layer-with-nested-stacking-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/reflections/opacity-reflection-transform-expected.png b/third_party/WebKit/LayoutTests/platform/win/fast/reflections/opacity-reflection-transform-expected.png
index 581a04b2..9cec965 100644
--- a/third_party/WebKit/LayoutTests/platform/win/fast/reflections/opacity-reflection-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/fast/reflections/opacity-reflection-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/table/multiple-captions-display-expected.png b/third_party/WebKit/LayoutTests/platform/win/fast/table/multiple-captions-display-expected.png
index 181dfce..04d7291d 100644
--- a/third_party/WebKit/LayoutTests/platform/win/fast/table/multiple-captions-display-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/fast/table/multiple-captions-display-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/text/complex-text-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/win/fast/text/complex-text-opacity-expected.png
index c48a456a..36f2a39 100644
--- a/third_party/WebKit/LayoutTests/platform/win/fast/text/complex-text-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/fast/text/complex-text-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
new file mode 100644
index 0000000..10b7f8ab
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-child-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-child-move-after-scroll-expected.png
index 959decd2..85df035 100644
--- a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-child-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-child-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
index 959decd2..85df035 100644
--- a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-child-of-fixed-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-expected.png b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-expected.png
index 054f8ce..86e0060 100644
--- a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-move-after-scroll-expected.png b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-move-after-scroll-expected.png
index 959decd2..85df035 100644
--- a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-move-after-scroll-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/fixed-move-after-scroll-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
index a5883e8..463b625 100644
--- a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/absolute-sized-content-with-resources-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/use-detach-expected.png b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/use-detach-expected.png
index 4ba5f45..17153a92 100644
--- a/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/use-detach-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/use-detach-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
index 3bc1a300..e334933 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
index 0c7ef68d0..5ecdecb 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textAnchor-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textAnchor-expected.png
index b59653eb..8079853b 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textAnchor-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textAnchor-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textProperties-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textProperties-expected.png
index e6b6a53..538556d 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textProperties-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textProperties-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/clip-mask-negative-scale-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/clip-mask-negative-scale-expected.png
index e62e326..d9bc2c5 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/clip-mask-negative-scale-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/clip-mask-negative-scale-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/container-opacity-clip-viewBox-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/container-opacity-clip-viewBox-expected.png
index 27e1ed0..cd3a2b2e 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/container-opacity-clip-viewBox-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/container-opacity-clip-viewBox-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/dominant-baseline-hanging-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/dominant-baseline-hanging-expected.png
index c31d887..acce323 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/dominant-baseline-hanging-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/dominant-baseline-hanging-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/text-image-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/text-image-opacity-expected.png
index 54bca81..4a2ef56 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/text-image-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/text-image-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-modify-container-in-target-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-modify-container-in-target-expected.png
index 2481e20..7de0059 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-modify-container-in-target-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-modify-container-in-target-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-modify-target-container-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-modify-target-container-expected.png
index 7a22566b..7ae902f 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-modify-target-container-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-modify-target-container-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-g-containing-use-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-g-containing-use-expected.png
index 95940b8..79bf3b4 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-g-containing-use-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-g-containing-use-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-g-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-g-expected.png
index be2f09d..0a27b6c3 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-g-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-g-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-use-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-use-expected.png
index be2f09d..0a27b6c3 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-use-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-on-use-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-transform-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-transform-expected.png
index a8a70c8..382b75e 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/custom/use-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/svg/transforms/text-with-mask-with-svg-transform-expected.png b/third_party/WebKit/LayoutTests/platform/win/svg/transforms/text-with-mask-with-svg-transform-expected.png
index f05a2c1..02fa0f0 100644
--- a/third_party/WebKit/LayoutTests/platform/win/svg/transforms/text-with-mask-with-svg-transform-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/svg/transforms/text-with-mask-with-svg-transform-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/transforms/2d/hindi-rotated-expected.png b/third_party/WebKit/LayoutTests/platform/win/transforms/2d/hindi-rotated-expected.png
index 5b597ed..158b9848 100644
--- a/third_party/WebKit/LayoutTests/platform/win/transforms/2d/hindi-rotated-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/transforms/2d/hindi-rotated-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/transforms/transform-on-inline-expected.png b/third_party/WebKit/LayoutTests/platform/win/transforms/transform-on-inline-expected.png
index 0a395209..363f65ba 100644
--- a/third_party/WebKit/LayoutTests/platform/win/transforms/transform-on-inline-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/transforms/transform-on-inline-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/transforms/transform-table-row-expected.png b/third_party/WebKit/LayoutTests/platform/win/transforms/transform-table-row-expected.png
index a3b5ef4..6aef163 100644
--- a/third_party/WebKit/LayoutTests/platform/win/transforms/transform-table-row-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win/transforms/transform-table-row-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png b/third_party/WebKit/LayoutTests/platform/win/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png
new file mode 100644
index 0000000..04d7291d
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/platform/win/virtual/mojo-loading/fast/table/multiple-captions-display-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win7/fast/text/complex-text-opacity-expected.png b/third_party/WebKit/LayoutTests/platform/win7/fast/text/complex-text-opacity-expected.png
index fb49f0b..163271b 100644
--- a/third_party/WebKit/LayoutTests/platform/win7/fast/text/complex-text-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win7/fast/text/complex-text-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win7/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png b/third_party/WebKit/LayoutTests/platform/win7/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
index 073bd0ba..704512e 100644
--- a/third_party/WebKit/LayoutTests/platform/win7/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win7/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win7/transforms/2d/hindi-rotated-expected.png b/third_party/WebKit/LayoutTests/platform/win7/transforms/2d/hindi-rotated-expected.png
index 855bfdf8..d405ed3 100644
--- a/third_party/WebKit/LayoutTests/platform/win7/transforms/2d/hindi-rotated-expected.png
+++ b/third_party/WebKit/LayoutTests/platform/win7/transforms/2d/hindi-rotated-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/custom/grayscale-gradient-mask-2-expected.png b/third_party/WebKit/LayoutTests/svg/custom/grayscale-gradient-mask-2-expected.png
index f4b4594..b751232b 100644
--- a/third_party/WebKit/LayoutTests/svg/custom/grayscale-gradient-mask-2-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/custom/grayscale-gradient-mask-2-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/custom/grayscale-gradient-mask-expected.png b/third_party/WebKit/LayoutTests/svg/custom/grayscale-gradient-mask-expected.png
index 490ee83..2bb60b3c 100644
--- a/third_party/WebKit/LayoutTests/svg/custom/grayscale-gradient-mask-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/custom/grayscale-gradient-mask-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/custom/marker-opacity-expected.png b/third_party/WebKit/LayoutTests/svg/custom/marker-opacity-expected.png
index 5792007..1d35355 100644
--- a/third_party/WebKit/LayoutTests/svg/custom/marker-opacity-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/custom/marker-opacity-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.png b/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.png
new file mode 100644
index 0000000..12f195d
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.svg b/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.svg
deleted file mode 100644
index 2e71410..0000000
--- a/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.svg
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<svg xmlns="http://www.w3.org/2000/svg">
-    <path d="m 50 50 l 0 0" stroke="red" stroke-width="25" stroke-linecap="round"/>
-    <rect x="50" y="50" width="75" height="75" fill="green" opacity="0.5"/>
-
-    <path d="m 150 50 l 0 0" stroke="red" stroke-width="25" stroke-linecap="square"/>
-    <rect x="150" y="50" width="75" height="75" fill="green" opacity="0.5"/>
-</svg>
diff --git a/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.txt b/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.txt
new file mode 100644
index 0000000..16399cf
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/svg/custom/marker-zero-length-linecaps-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  LayoutView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  LayoutSVGRoot {svg} at (0,0) size 800x600
+    LayoutSVGHiddenContainer {defs} at (0,0) size 0x0
+      LayoutSVGResourceMarker {marker} [id="testMarker"] [markerUnits=strokeWidth] [ref at (0,0)] [angle=0.00]
+        LayoutSVGRect {rect} at (0,0) size 10x10 [opacity=0.50] [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
+    LayoutSVGPath {path} at (50,50) size 0x0 [stroke={[type=SOLID] [color=#FF0000] [stroke width=25.00] [line cap=ROUND]}] [fill={[type=SOLID] [color=#000000]}] [end marker=testMarker] [data="m 50 50 l 0 0"]
+    LayoutSVGPath {path} at (150,50) size 0x0 [stroke={[type=SOLID] [color=#FF0000] [stroke width=25.00] [line cap=SQUARE]}] [fill={[type=SOLID] [color=#000000]}] [end marker=testMarker] [data="m 150 50 l 0 0"]
diff --git a/third_party/WebKit/LayoutTests/svg/custom/small-rect-scale-expected.png b/third_party/WebKit/LayoutTests/svg/custom/small-rect-scale-expected.png
index e1b282d..39db4b7 100644
--- a/third_party/WebKit/LayoutTests/svg/custom/small-rect-scale-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/custom/small-rect-scale-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-maskUnits-attr-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-maskUnits-attr-expected.png
index 2292c99..4bf20c1 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-maskUnits-attr-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-maskUnits-attr-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-maskUnits-prop-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-maskUnits-prop-expected.png
index 2292c99..4bf20c1 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-maskUnits-prop-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-maskUnits-prop-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.png
Binary files differ
diff --git a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.png b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.png
index b5de8e2..2ea8210 100644
--- a/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.png
+++ b/third_party/WebKit/LayoutTests/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.png
Binary files differ
diff --git a/third_party/WebKit/Source/platform/graphics/paint/CompositingRecorder.h b/third_party/WebKit/Source/platform/graphics/paint/CompositingRecorder.h
index 9f5e284..8b7bf57b 100644
--- a/third_party/WebKit/Source/platform/graphics/paint/CompositingRecorder.h
+++ b/third_party/WebKit/Source/platform/graphics/paint/CompositingRecorder.h
@@ -20,11 +20,13 @@
   USING_FAST_MALLOC(CompositingRecorder);
 
  public:
+  // If bounds is provided, the content will be explicitly clipped to those
+  // bounds.
   CompositingRecorder(GraphicsContext&,
                       const DisplayItemClient&,
                       const SkBlendMode,
                       const float opacity,
-                      const FloatRect* bounds = 0,
+                      const FloatRect* bounds = nullptr,
                       ColorFilter = kColorFilterNone);
 
   ~CompositingRecorder();
diff --git a/third_party/WebKit/public/platform/WebDisplayItemList.h b/third_party/WebKit/public/platform/WebDisplayItemList.h
index 623f0ef..3f89349 100644
--- a/third_party/WebKit/public/platform/WebDisplayItemList.h
+++ b/third_party/WebKit/public/platform/WebDisplayItemList.h
@@ -49,6 +49,8 @@
   virtual void AppendEndFloatClipItem() {}
   virtual void AppendTransformItem(const SkMatrix44&) {}
   virtual void AppendEndTransformItem() {}
+  // If bounds is provided, the content will be explicitly clipped to those
+  // bounds.
   virtual void AppendCompositingItem(float opacity,
                                      SkBlendMode,
                                      SkRect* bounds,