Revert of SkCanvas::clear() should call down to devices even when the clip is empty. (patchset #1 id:1 of https://codereview.chromium.org/735233003/)
Reason for revert:
Chrome unit_tests failures on Mac & Win, blocking the roll: http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/5613
Original issue's description:
> SkCanvas::clear() should call down to devices even when the clip is empty.
>
> SkDrawIter had a lovely, completely unused, option for this. Oversight?
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/378e70d8e561b72a904286ea231946f5c8345b9a
TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/748733002
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index bf736e9..3bf1ad9 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -1707,7 +1707,7 @@
//////////////////////////////////////////////////////////////////////////////
void SkCanvas::clear(SkColor color) {
- SkDrawIter iter(this, false/*clear can affect empty clips*/);
+ SkDrawIter iter(this);
this->predrawNotify();
while (iter.next()) {
iter.fDevice->clear(color);
diff --git a/tests/CanvasTest.cpp b/tests/CanvasTest.cpp
index 58be9da..5437d5b 100644
--- a/tests/CanvasTest.cpp
+++ b/tests/CanvasTest.cpp
@@ -795,17 +795,3 @@
test_newraster(reporter);
}
-
-// Make sure SkCanvas passes clear() calls down to its devices even when they're clipped out.
-DEF_TEST(Canvas_clear, reporter) {
- SkBitmap bm;
- bm.allocN32Pixels(1,1);
-
- SkCanvas canvas(bm);
- canvas.clear(SK_ColorRED);
- REPORTER_ASSERT(reporter, SK_ColorRED == bm.getColor(0,0));
-
- canvas.clipRect(SkRect::MakeEmpty());
- canvas.clear(SK_ColorGREEN);
- REPORTER_ASSERT(reporter, SK_ColorGREEN == bm.getColor(0,0));
-}