Index: src/core/SkMaskFilter.cpp |
diff --git a/src/core/SkMaskFilter.cpp b/src/core/SkMaskFilter.cpp |
index f062f135fdbebbd4f5016bfde05dc0a424e04ccb..1bc17bb47fa69da7cfbee04104dff76d56f5bb2a 100644 |
--- a/src/core/SkMaskFilter.cpp |
+++ b/src/core/SkMaskFilter.cpp |
@@ -349,10 +349,14 @@ bool SkMaskFilter::filterMaskGPU(GrContext* context, |
if (!result) { |
return false; |
} |
+ SkAutoUnref aur(dst); |
+ SkImageInfo info; |
resultBM->setConfig(srcBM.config(), dst->width(), dst->height()); |
- resultBM->setPixelRef(SkNEW_ARGS(SkGrPixelRef, (dst)))->unref(); |
- dst->unref(); |
+ if (!resultBM->asImageInfo(&info)) { |
+ return false; |
+ } |
+ resultBM->setPixelRef(SkNEW_ARGS(SkGrPixelRef, (info, dst)))->unref(); |
return true; |
} |