| Index: src/core/SkCanvas.cpp
|
| diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
|
| index e53a104c47fa28406f1d440dbcd670365d877a24..5d517801e4affc11b864c5b4edc1430f291f22a6 100644
|
| --- a/src/core/SkCanvas.cpp
|
| +++ b/src/core/SkCanvas.cpp
|
| @@ -3013,6 +3013,9 @@ void SkCanvas::drawDrawable(SkDrawable* dr, const SkMatrix* matrix) {
|
| }
|
|
|
| void SkCanvas::onDrawDrawable(SkDrawable* dr, const SkMatrix* matrix) {
|
| +// b/31304115
|
| +// We cannot trust that the clip bounds are set correctly by the framework.
|
| +#ifndef SK_BUILD_FOR_ANDROID_FRAMEWORK
|
| SkRect bounds = dr->getBounds();
|
| if (matrix) {
|
| matrix->mapRect(&bounds);
|
| @@ -3020,6 +3023,8 @@ void SkCanvas::onDrawDrawable(SkDrawable* dr, const SkMatrix* matrix) {
|
| if (this->quickReject(bounds)) {
|
| return;
|
| }
|
| +#endif
|
| +
|
| dr->draw(this, matrix);
|
| }
|
|
|
|
|