Index: src/codec/SkCodec_libbmp.cpp |
diff --git a/src/codec/SkCodec_libbmp.cpp b/src/codec/SkCodec_libbmp.cpp |
index 75c5715bda1df787b6e503c3346a1a172590bde7..3d2391b1703ef44222bdf4b5dc8d4c48fcad7c48 100644 |
--- a/src/codec/SkCodec_libbmp.cpp |
+++ b/src/codec/SkCodec_libbmp.cpp |
@@ -496,8 +496,13 @@ bool SkBmpCodec::ReadHeader(SkStream* stream, bool isIco, SkCodec** codecOut) { |
* |
*/ |
SkCodec* SkBmpCodec::NewFromStream(SkStream* stream, bool isIco) { |
+ SkAutoTDelete<SkStream> streamDeleter(stream); |
SkCodec* codec = NULL; |
if (ReadHeader(stream, isIco, &codec)) { |
mtklein
2015/04/03 13:13:05
Might be less error prone to have ReadHeader take
scroggo
2015/04/03 13:59:53
Yeah, I was not sure the best way to handle this.
|
+ // codec has taken ownership of stream, so we do not need to |
+ // delete it. |
+ SkASSERT(codec); |
+ streamDeleter.detach(); |
return codec; |
} |
return NULL; |