From da141e6dd5b22d57092eb5bbbeef6ea5e9d28430 Mon Sep 17 00:00:00 2001 From: Derek Sollenberger Date: Fri, 5 Aug 2011 16:45:50 -0400 Subject: Fix memory leak in WebKit's NinePatch code. bug: 5128453 Change-Id: I08704ae3cbc6bae9c189a6e16f2e7aebebd5544c --- Source/WebKit/android/RenderSkinNinePatch.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Source/WebKit/android/RenderSkinNinePatch.cpp') diff --git a/Source/WebKit/android/RenderSkinNinePatch.cpp b/Source/WebKit/android/RenderSkinNinePatch.cpp index 0c915c0..074a65a 100644 --- a/Source/WebKit/android/RenderSkinNinePatch.cpp +++ b/Source/WebKit/android/RenderSkinNinePatch.cpp @@ -48,8 +48,8 @@ bool RenderSkinNinePatch::decodeAsset(AssetManager* am, const char* filename, Ni SkImageDecoder::Mode mode = SkImageDecoder::kDecodePixels_Mode; SkBitmap::Config prefConfig = SkBitmap::kNo_Config; - SkStream* stream = new SkMemoryStream(asset->getBuffer(false), asset->getLength()); - SkImageDecoder* decoder = SkImageDecoder::Factory(stream); + SkMemoryStream stream(asset->getBuffer(false), asset->getLength()); + SkImageDecoder* decoder = SkImageDecoder::Factory(&stream); if (!decoder) { asset->close(); LOGE("RenderSkinNinePatch::Failed to create an image decoder"); @@ -65,7 +65,7 @@ bool RenderSkinNinePatch::decodeAsset(AssetManager* am, const char* filename, Ni SkAutoTDelete add(decoder); decoder->setPeeker(&peeker); - if (!decoder->decode(stream, &ninepatch->m_bitmap, prefConfig, mode, true)) { + if (!decoder->decode(&stream, &ninepatch->m_bitmap, prefConfig, mode, true)) { asset->close(); LOGE("RenderSkinNinePatch::Failed to decode nine patch asset"); return false; -- cgit v1.1