diff --git a/media/jni/android_media_MediaDrm.cpp b/media/jni/android_media_MediaDrm.cpp index 681d76ab0dfee..b70818d1e1b0a 100644 --- a/media/jni/android_media_MediaDrm.cpp +++ b/media/jni/android_media_MediaDrm.cpp @@ -1021,9 +1021,10 @@ DrmPlugin::SecurityLevel jintToSecurityLevel(jint jlevel) { static jbyteArray android_media_MediaDrm_getSupportedCryptoSchemesNative(JNIEnv *env) { sp drm = android::DrmUtils::MakeDrm(); + if (drm == NULL) return env->NewByteArray(0); + std::vector bv; drm->getSupportedSchemes(bv); - jbyteArray jUuidBytes = env->NewByteArray(bv.size()); env->SetByteArrayRegion(jUuidBytes, 0, bv.size(), reinterpret_cast(bv.data())); return jUuidBytes;