if bounds don't intersect in DIFF mode, just return src (don't return empty)
Review URL: https://codereview.appspot.com/6337052
git-svn-id: http://skia.googlecode.com/svn/trunk@4331 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/core/SkAAClip.cpp b/src/core/SkAAClip.cpp
index c4b15b6..8936297 100644
--- a/src/core/SkAAClip.cpp
+++ b/src/core/SkAAClip.cpp
@@ -1702,7 +1702,11 @@
case SkRegion::kIntersect_Op:
case SkRegion::kDifference_Op:
if (!rStorage.intersect(rOrig, boundsStorage)) {
- return this->setEmpty();
+ if (SkRegion::kIntersect_Op == op) {
+ return this->setEmpty();
+ } else { // kDifference
+ return !this->isEmpty();
+ }
}
r = &rStorage; // use the intersected bounds
break;