Index: src/gpu/GrClip.cpp |
diff --git a/src/gpu/GrClip.cpp b/src/gpu/GrClip.cpp |
index 1dc6edc16812fd835c5f3bbd388b276abcd32ca7..63d8f5169510780099aac011c10131b101e47221 100644 |
--- a/src/gpu/GrClip.cpp |
+++ b/src/gpu/GrClip.cpp |
@@ -21,8 +21,6 @@ |
void GrClip::getConservativeBounds(int width, int height, SkIRect* devResult, |
bool* isIntersectionOfRects) const { |
switch (fClipType) { |
- default: |
- SkFAIL("incomplete switch\n"); |
case kWideOpen_ClipType: { |
devResult->setLTRB(0, 0, width, height); |
if (isIntersectionOfRects) { |
@@ -35,6 +33,15 @@ void GrClip::getConservativeBounds(int width, int height, SkIRect* devResult, |
*isIntersectionOfRects = true; |
} |
} break; |
+ case kRect_ClipType: { |
+ devResult->setLTRB(SkScalarCeilToInt(this->rect().fLeft), |
+ SkScalarCeilToInt(this->rect().fTop), |
+ SkScalarCeilToInt(this->rect().fRight), |
+ SkScalarCeilToInt(this->rect().fBottom)); |
+ if (isIntersectionOfRects) { |
+ *isIntersectionOfRects = true; |
+ } |
+ } break; |
case kClipStack_ClipType: { |
SkRect devBounds; |
this->clipStack()->getConservativeBounds(-this->origin().fX, |