| Index: src/core/SkRecordDraw.cpp
|
| diff --git a/src/core/SkRecordDraw.cpp b/src/core/SkRecordDraw.cpp
|
| index 626dd6d792e6ff0a210b72d5938c99711f945006..0fa5c78b4dce5773487bbeb6428d31ec62542e31 100644
|
| --- a/src/core/SkRecordDraw.cpp
|
| +++ b/src/core/SkRecordDraw.cpp
|
| @@ -22,8 +22,12 @@ void SkRecordDraw(const SkRecord& record,
|
| // is not necessarily in that same space. getClipBounds() returns us
|
| // this canvas' clip bounds transformed back into identity space, which
|
| // lets us query the BBH.
|
| - SkRect query = { 0, 0, 0, 0 };
|
| - (void)canvas->getClipBounds(&query);
|
| + SkRect query;
|
| + if (!canvas->getClipBounds(&query)) {
|
| + // We want to make sure our query rectangle is never totally empty.
|
| + // Clear ignores the clip, so it must draw even if the clip is logically empty.
|
| + query = SkRect::MakeWH(SK_ScalarNearlyZero, SK_ScalarNearlyZero);
|
| + }
|
|
|
| SkTDArray<unsigned> ops;
|
| bbh->search(query, &ops);
|
|
|