| Index: src/core/SkBitmapDevice.cpp
|
| diff --git a/src/core/SkBitmapDevice.cpp b/src/core/SkBitmapDevice.cpp
|
| index ac3b9df0827ed51aedfb5f5520c7457ced5e7a8a..9cda205776e85f90199a2fe2a39bfb5c360c3d82 100644
|
| --- a/src/core/SkBitmapDevice.cpp
|
| +++ b/src/core/SkBitmapDevice.cpp
|
| @@ -270,7 +270,8 @@ void SkBitmapDevice::drawBitmapRect(const SkDraw& draw, const SkBitmap& bitmap,
|
|
|
| // clip the tmpSrc to the bounds of the bitmap, and recompute dstRect if
|
| // needed (if the src was clipped). No check needed if src==null.
|
| - if (src) {
|
| + // If bitmapBounds are the same as src, go faster path bellow.
|
| + if (src && !(bitmapBounds == *src)) {
|
| if (!bitmapBounds.contains(*src)) {
|
| if (!tmpSrc.intersect(bitmapBounds)) {
|
| return; // nothing to draw
|
|
|