aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Matt Sarett <msarett@google.com>2017-03-21 13:05:41 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-03-21 17:56:35 +0000
commit0887c70707738a0981197879a8373b4f221eaf1c (patch)
tree9b7452cc67ac76953d22fb494bd623dde19778df
parent74de1f6b352599f55034cf96e175f70c00d6d9b9 (diff)
SkImage_Raster: Keep tmp in scope while it is in use
BUG=skia: Change-Id: Ida1457ad7489f23804b8e4317e283c1dce0f6fc6 Reviewed-on: https://skia-review.googlesource.com/9918 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
-rw-r--r--src/image/SkImage_Raster.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/image/SkImage_Raster.cpp b/src/image/SkImage_Raster.cpp
index 960952b45a..26f43c7e1f 100644
--- a/src/image/SkImage_Raster.cpp
+++ b/src/image/SkImage_Raster.cpp
@@ -14,6 +14,7 @@
#include "SkImagePriv.h"
#include "SkPixelRef.h"
#include "SkSurface.h"
+#include "SkTLazy.h"
#if SK_SUPPORT_GPU
#include "GrContext.h"
@@ -380,10 +381,11 @@ sk_sp<SkImage> SkImage_Raster::onMakeColorSpace(sk_sp<SkColorSpace> target) cons
dst.allocPixels(dstInfo);
SkPixmap src;
+ SkTLazy<SkBitmap> tmp;
if (!fBitmap.peekPixels(&src)) {
- SkBitmap tmp(fBitmap);
- tmp.lockPixels();
- SkAssertResult(tmp.peekPixels(&src));
+ tmp.init(fBitmap);
+ tmp.get()->lockPixels();
+ SkAssertResult(tmp.get()->peekPixels(&src));
}
// Treat nullptr srcs as sRGB.