diff --git a/media/jni/android_media_MediaPlayer.cpp b/media/jni/android_media_MediaPlayer.cpp index 95522001d3420..44aff6408f5ba 100644 --- a/media/jni/android_media_MediaPlayer.cpp +++ b/media/jni/android_media_MediaPlayer.cpp @@ -385,6 +385,10 @@ android_media_MediaPlayer_prepare(JNIEnv *env, jobject thiz, jobject piidParcel) process_media_player_call( env, thiz, mp->prepare(), "java/io/IOException", "Prepare failed." ); + if (env->ExceptionCheck()) { + return UNKNOWN_ERROR; + } + // update the piid Parcel *request = parcelForJavaObject(env, piidParcel); auto reply = std::make_unique(); @@ -407,6 +411,10 @@ android_media_MediaPlayer_prepareAsync(JNIEnv *env, jobject thiz, jobject piidPa process_media_player_call( env, thiz, mp->prepareAsync(), "java/io/IOException", "Prepare Async failed." ); + if (env->ExceptionCheck()) { + return UNKNOWN_ERROR; + } + // update the piid Parcel *request = parcelForJavaObject(env, piidParcel); auto reply = std::make_unique();