| Index: src/gpu/GrSoftwarePathRenderer.cpp
|
| diff --git a/src/gpu/GrSoftwarePathRenderer.cpp b/src/gpu/GrSoftwarePathRenderer.cpp
|
| index 4fb7538b03f3dce4ed9ba0a6543cb8372ff711fd..364c214a60b46a30c2f92b271b6a023a20422422 100644
|
| --- a/src/gpu/GrSoftwarePathRenderer.cpp
|
| +++ b/src/gpu/GrSoftwarePathRenderer.cpp
|
| @@ -49,13 +49,11 @@ bool get_path_and_clip_bounds(const GrDrawTarget* target,
|
| if (NULL == rt) {
|
| return false;
|
| }
|
| - *devPathBounds = SkIRect::MakeWH(rt->width(), rt->height());
|
|
|
| target->getClip()->getConservativeBounds(rt, devClipBounds);
|
|
|
| - // TODO: getConservativeBounds already intersects with the
|
| - // render target's bounding box. Remove this next line
|
| - if (!devPathBounds->intersect(*devClipBounds)) {
|
| + if (devClipBounds->isEmpty()) {
|
| + *devPathBounds = SkIRect::MakeWH(rt->width(), rt->height());
|
| return false;
|
| }
|
|
|
| @@ -64,6 +62,7 @@ bool get_path_and_clip_bounds(const GrDrawTarget* target,
|
| matrix.mapRect(&pathSBounds, path.getBounds());
|
| SkIRect pathIBounds;
|
| pathSBounds.roundOut(&pathIBounds);
|
| + *devPathBounds = *devClipBounds;
|
| if (!devPathBounds->intersect(pathIBounds)) {
|
| // set the correct path bounds, as this would be used later.
|
| *devPathBounds = pathIBounds;
|
|
|