Chromium Code Reviews
DescriptionFix crash in PaintOpBuffer alpha optimization
PaintOpBuffer in general checks if ops are draw ops before applying
the save/draw/restore alpha folding optimization to remove save layers.
However, the specific code that tries to recursively apply this op
to DrawRecordOp with a single op does not check draw op status.
Printing generates single op pictures containing annotate ops (for pdf
links, etc), which causes this to crash in practice.
The last unit test in this patch causes this to crash without the code
change applied. The other unit tests are there just for completeness.
An alternative to this patch would be to implement RasterWithAlpha for
all op types, but that seems like needless code gen for a bunch of
functions that will never get called in practice.
BUG=712093
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
Review-Url: https://codereview.chromium.org/2823113002
Cr-Commit-Position: refs/heads/master@{#465145}
Committed: https://chromium.googlesource.com/chromium/src/+/52c5ec950ba33ce26507840a34fd8690f86fe801
Patch Set 1 #Patch Set 2 : Fix windows question mark #
Messages
Total messages: 14 (10 generated)
|
|||||||||||||||||||||||||||||||||||||