summaryrefslogtreecommitdiffstats
path: root/media/base/android/media_drm_bridge.cc
diff options
context:
space:
mode:
Diffstat (limited to 'media/base/android/media_drm_bridge.cc')
-rw-r--r--media/base/android/media_drm_bridge.cc15
1 files changed, 14 insertions, 1 deletions
diff --git a/media/base/android/media_drm_bridge.cc b/media/base/android/media_drm_bridge.cc
index 3cb5bac..91c08d2 100644
--- a/media/base/android/media_drm_bridge.cc
+++ b/media/base/android/media_drm_bridge.cc
@@ -17,6 +17,7 @@
#include "base/message_loop/message_loop_proxy.h"
#include "base/strings/string_util.h"
#include "base/sys_byteorder.h"
+#include "base/sys_info.h"
#include "jni/MediaDrmBridge_jni.h"
#include "widevine_cdm_version.h" // In SHARED_INTERMEDIATE_DIR.
@@ -254,7 +255,19 @@ static bool IsKeySystemSupportedWithTypeImpl(
// static
bool MediaDrmBridge::IsAvailable() {
- return base::android::BuildInfo::GetInstance()->sdk_int() >= 19;
+ if (base::android::BuildInfo::GetInstance()->sdk_int() < 19)
+ return false;
+
+ int32 os_major_version = 0;
+ int32 os_minor_version = 0;
+ int32 os_bugfix_version = 0;
+ base::SysInfo::OperatingSystemVersionNumbers(&os_major_version,
+ &os_minor_version,
+ &os_bugfix_version);
+ if (os_major_version == 4 && os_minor_version == 4 && os_bugfix_version == 0)
+ return false;
+
+ return true;
}
// static