From 025af8b0de1c4697a54f6b7363e27111a00eb284 Mon Sep 17 00:00:00 2001 From: Jeff Tinker Date: Mon, 1 Jun 2015 14:17:06 -0700 Subject: Fix bug in MediaCrypto.setMediaDrmSession MediaCryptoException was being thrown unexpectedly bug: 21565802 Change-Id: I44768cac1e85a01c8d775b8432d11711ae978b0d --- media/jni/android_media_MediaCrypto.cpp | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'media/jni') diff --git a/media/jni/android_media_MediaCrypto.cpp b/media/jni/android_media_MediaCrypto.cpp index a9accb0..d7968d2 100644 --- a/media/jni/android_media_MediaCrypto.cpp +++ b/media/jni/android_media_MediaCrypto.cpp @@ -301,17 +301,19 @@ static void android_media_MediaCrypto_setMediaDrmSession( status_t err = crypto->setMediaDrmSession(sessionId); - String8 msg("setMediaDrmSession failed"); - if (err == ERROR_DRM_SESSION_NOT_OPENED) { - msg += ": session not opened"; - } else if (err == ERROR_UNSUPPORTED) { - msg += ": not supported by this crypto scheme"; - } else if (err == NO_INIT) { - msg += ": crypto plugin not initialized"; - } else if (err != OK) { - msg.appendFormat(": general failure (%d)", err); + if (err != OK) { + String8 msg("setMediaDrmSession failed"); + if (err == ERROR_DRM_SESSION_NOT_OPENED) { + msg += ": session not opened"; + } else if (err == ERROR_UNSUPPORTED) { + msg += ": not supported by this crypto scheme"; + } else if (err == NO_INIT) { + msg += ": crypto plugin not initialized"; + } else { + msg.appendFormat(": general failure (%d)", err); + } + jniThrowException(env, "android/media/MediaCryptoException", msg.string()); } - jniThrowException(env, "android/media/MediaCryptoException", msg.string()); } static JNINativeMethod gMethods[] = { -- cgit v1.1