Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(441)

Issue 380373003: Fix for saveLayer() with filters vs. the BBox Hierarchy. (Closed)

Created:
6 years, 5 months ago by Stephen White
Modified:
6 years, 5 months ago
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/skia.git@master
Project:
skia
Visibility:
Public.

Description

Fix for saveLayer() with filters vs. the BBox Hierarchy. When building acceleration structures for SkPicture, we must transform the primitive's bounds not only by its own SkPaint, but by the paints of any saveLayer()s currently active above it. We do this by pushing the SkPaint onto a stack on saveLayer(), and popping them on restore(). We also push a NULL paint in save(), so that the pushes and pops are balanced. BUG=skia:2734 R=reed@google.com,mtklein@google.com Committed: https://skia.googlesource.com/skia/+/6ca0b6a46cbe9bef3e2b9b9db813ec864efd62de Committed: https://skia.googlesource.com/skia/+/837f5321a409228a27fc710eb71c87866b820cfb

Patch Set 1 #

Patch Set 2 : Eliminate SaveEntry; clone SkPaint on push() #

Total comments: 2

Patch Set 3 : Make fSaveSave stack private #

Patch Set 4 : Added comments #

Patch Set 5 : Update to ToT #

Total comments: 2

Patch Set 6 : Use SkTDArray instead of SkTDStack #

Total comments: 8

Patch Set 7 : Use SkTDArray's push()/pop(). #

Patch Set 8 : Use SkTDArray::deleteAll() #

Unified diffs Side-by-side diffs Delta from patch set Stats (+107 lines, -3 lines) Patch
M gm/resizeimagefilter.cpp View 1 2 3 4 5 1 chunk +0 lines, -2 lines 0 comments Download
M src/core/SkBBoxRecord.h View 1 2 3 4 5 4 chunks +11 lines, -1 line 0 comments Download
M src/core/SkBBoxRecord.cpp View 1 2 3 4 5 6 7 3 chunks +32 lines, -0 lines 0 comments Download
M tests/ImageFilterTest.cpp View 3 4 1 chunk +64 lines, -0 lines 0 comments Download

Messages

Total messages: 23 (0 generated)
Stephen White
Mike^2: PTAL. This is a first stab at a fix for this issue. Please check ...
6 years, 5 months ago (2014-07-10 22:27:12 UTC) #1
mtklein
On 2014/07/10 22:27:12, Stephen White wrote: > Mike^2: PTAL. This is a first stab at ...
6 years, 5 months ago (2014-07-10 23:00:59 UTC) #2
Stephen White
On 2014/07/10 23:00:59, mtklein wrote: > On 2014/07/10 22:27:12, Stephen White wrote: > > Mike^2: ...
6 years, 5 months ago (2014-07-11 15:00:57 UTC) #3
mtklein
lgtm. Just some places I think deserve comments. When this lands I think we can ...
6 years, 5 months ago (2014-07-11 15:37:14 UTC) #4
Stephen White
On 2014/07/11 15:37:14, mtklein wrote: > lgtm. Just some places I think deserve comments. Done. ...
6 years, 5 months ago (2014-07-11 15:48:34 UTC) #5
Stephen White
The CQ bit was checked by senorblanco@chromium.org
6 years, 5 months ago (2014-07-11 16:06:23 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/senorblanco@chromium.org/380373003/60001
6 years, 5 months ago (2014-07-11 16:06:29 UTC) #7
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 5 months ago (2014-07-11 16:06:30 UTC) #8
commit-bot: I haz the power
Failed to apply patch for src/core/SkBBoxRecord.cpp: While running git apply --index -p1; error: patch failed: ...
6 years, 5 months ago (2014-07-11 16:06:31 UTC) #9
Stephen White
The CQ bit was checked by senorblanco@chromium.org
6 years, 5 months ago (2014-07-11 16:13:19 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/senorblanco@chromium.org/380373003/80001
6 years, 5 months ago (2014-07-11 16:13:29 UTC) #11
commit-bot: I haz the power
Change committed as 6ca0b6a46cbe9bef3e2b9b9db813ec864efd62de
6 years, 5 months ago (2014-07-11 16:56:09 UTC) #12
robertphillips
https://codereview.chromium.org/380373003/diff/80001/src/core/SkBBoxRecord.cpp File src/core/SkBBoxRecord.cpp (right): https://codereview.chromium.org/380373003/diff/80001/src/core/SkBBoxRecord.cpp#newcode334 src/core/SkBBoxRecord.cpp:334: I don't think SkTDStack::index does what you want! If ...
6 years, 5 months ago (2014-07-13 18:57:29 UTC) #13
Stephen White
mtklein: PTAL. New patch up. https://codereview.chromium.org/380373003/diff/80001/src/core/SkBBoxRecord.cpp File src/core/SkBBoxRecord.cpp (right): https://codereview.chromium.org/380373003/diff/80001/src/core/SkBBoxRecord.cpp#newcode334 src/core/SkBBoxRecord.cpp:334: On 2014/07/13 18:57:29, robertphillips ...
6 years, 5 months ago (2014-07-14 15:35:13 UTC) #14
reed1
On 2014/07/14 15:35:13, Stephen White wrote: > mtklein: PTAL. New patch up. > > https://codereview.chromium.org/380373003/diff/80001/src/core/SkBBoxRecord.cpp ...
6 years, 5 months ago (2014-07-14 16:07:02 UTC) #15
mtklein
On 2014/07/14 16:07:02, reed1 wrote: > On 2014/07/14 15:35:13, Stephen White wrote: > > mtklein: ...
6 years, 5 months ago (2014-07-14 16:15:23 UTC) #16
robertphillips
I second the motion (to remove it).
6 years, 5 months ago (2014-07-14 16:25:37 UTC) #17
mtklein
no dealbreakers https://codereview.chromium.org/380373003/diff/100001/src/core/SkBBoxRecord.cpp File src/core/SkBBoxRecord.cpp (right): https://codereview.chromium.org/380373003/diff/100001/src/core/SkBBoxRecord.cpp#newcode11 src/core/SkBBoxRecord.cpp:11: SkBBoxRecord::~SkBBoxRecord() { Consider just calling fSaveStack.deleteAll() ? ...
6 years, 5 months ago (2014-07-14 16:43:13 UTC) #18
Stephen White
New patch up; PTAL. https://codereview.chromium.org/380373003/diff/100001/src/core/SkBBoxRecord.cpp File src/core/SkBBoxRecord.cpp (right): https://codereview.chromium.org/380373003/diff/100001/src/core/SkBBoxRecord.cpp#newcode11 src/core/SkBBoxRecord.cpp:11: SkBBoxRecord::~SkBBoxRecord() { On 2014/07/14 16:43:12, ...
6 years, 5 months ago (2014-07-14 16:55:01 UTC) #19
mtklein
On 2014/07/14 16:55:01, Stephen White wrote: > New patch up; PTAL. > > https://codereview.chromium.org/380373003/diff/100001/src/core/SkBBoxRecord.cpp > ...
6 years, 5 months ago (2014-07-14 16:57:56 UTC) #20
Stephen White
The CQ bit was checked by senorblanco@chromium.org
6 years, 5 months ago (2014-07-14 17:03:57 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/senorblanco@chromium.org/380373003/140001
6 years, 5 months ago (2014-07-14 17:04:14 UTC) #22
commit-bot: I haz the power
6 years, 5 months ago (2014-07-14 17:19:59 UTC) #23
Message was sent while issue was closed.
Change committed as 837f5321a409228a27fc710eb71c87866b820cfb

Powered by Google App Engine
This is Rietveld 408576698