Index: media/base/android/media_codec_bridge.cc |
diff --git a/media/base/android/media_codec_bridge.cc b/media/base/android/media_codec_bridge.cc |
index d5625790cdbca9df3d1985cd80a43ea312ad150b..fff50e58c48ede8b7c0d2612b1cc9e49ce31f529 100644 |
--- a/media/base/android/media_codec_bridge.cc |
+++ b/media/base/android/media_codec_bridge.cc |
@@ -130,7 +130,13 @@ bool MediaCodecBridge::CanDecode(const std::string& codec, bool is_secure) { |
if (mime.empty()) |
return false; |
ScopedJavaLocalRef<jstring> j_mime = ConvertUTF8ToJavaString(env, mime); |
- return !Java_MediaCodecBridge_create(env, j_mime.obj(), is_secure).is_null(); |
+ ScopedJavaLocalRef<jobject> j_media_codec_bridge = |
+ Java_MediaCodecBridge_create(env, j_mime.obj(), is_secure); |
+ if (!j_media_codec_bridge.is_null()) { |
+ Java_MediaCodecBridge_release(env, j_media_codec_bridge.obj()); |
+ return true; |
+ } |
+ return false; |
} |
MediaCodecBridge::MediaCodecBridge(const std::string& mime, bool is_secure) { |