diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-08-13 22:45:09 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2020-04-14 12:29:16 +0200 |
commit | 37e3135bc5cf853f94e9d0d9ba706277a25db928 (patch) | |
tree | 5b7154274de8ed438765a7ef44c4bc0eb2b8249f /dom/media/gmp | |
parent | 259bd2e9770625fb4054298874a0200ad17b4354 (diff) | |
download | UXP-37e3135bc5cf853f94e9d0d9ba706277a25db928.tar UXP-37e3135bc5cf853f94e9d0d9ba706277a25db928.tar.gz UXP-37e3135bc5cf853f94e9d0d9ba706277a25db928.tar.lz UXP-37e3135bc5cf853f94e9d0d9ba706277a25db928.tar.xz UXP-37e3135bc5cf853f94e9d0d9ba706277a25db928.zip |
Issue #26 Part 2a: make more EME code conditional.
- Exclude missed MediaKey functions and CDMProxy code.
- Exclude EME APIs frm being built (webidl change)
- Fix tests in --disable-eme state
Diffstat (limited to 'dom/media/gmp')
-rw-r--r-- | dom/media/gmp/GMPParent.cpp | 11 | ||||
-rw-r--r-- | dom/media/gmp/moz.build | 16 |
2 files changed, 23 insertions, 4 deletions
diff --git a/dom/media/gmp/GMPParent.cpp b/dom/media/gmp/GMPParent.cpp index 234ed5c05..a0027c6f8 100644 --- a/dom/media/gmp/GMPParent.cpp +++ b/dom/media/gmp/GMPParent.cpp @@ -30,8 +30,10 @@ using mozilla::ipc::GeckoChildProcessHost; #include "WMFDecoderModule.h" #endif +#ifdef MOZ_EME #include "mozilla/dom/WidevineCDMManifestBinding.h" #include "widevine-adapter/WidevineAdapter.h" +#endif namespace mozilla { @@ -654,6 +656,7 @@ GMPParent::ReadGMPMetaData() return ReadGMPInfoFile(infoFile); } +#ifdef MOZ_EME // Maybe this is the Widevine adapted plugin? nsCOMPtr<nsIFile> manifestFile; rv = mDirectory->Clone(getter_AddRefs(manifestFile)); @@ -662,6 +665,9 @@ GMPParent::ReadGMPMetaData() } manifestFile->AppendRelativePath(NS_LITERAL_STRING("manifest.json")); return ReadChromiumManifestFile(manifestFile); +#else + return GenericPromise::CreateAndReject(NS_ERROR_FAILURE, __func__); +#endif } RefPtr<GenericPromise> @@ -757,6 +763,7 @@ GMPParent::ParseChromiumManifest(nsString aJSON) LOGD("%s: for '%s'", __FUNCTION__, NS_LossyConvertUTF16toASCII(aJSON).get()); MOZ_ASSERT(NS_IsMainThread()); +#ifdef MOZ_EME mozilla::dom::WidevineCDMManifest m; if (!m.Init(aJSON)) { return GenericPromise::CreateAndReject(NS_ERROR_FAILURE, __func__); @@ -791,6 +798,10 @@ GMPParent::ParseChromiumManifest(nsString aJSON) #endif return GenericPromise::CreateAndResolve(true, __func__); +#else // !MOZ_EME + MOZ_ASSERT_UNREACHABLE("don't call me if EME isn't enabled"); + return GenericPromise::CreateAndReject(NS_ERROR_FAILURE, __func__); +#endif // !MOZ_EME } bool diff --git a/dom/media/gmp/moz.build b/dom/media/gmp/moz.build index 3b67fb5c9..f7b012733 100644 --- a/dom/media/gmp/moz.build +++ b/dom/media/gmp/moz.build @@ -35,8 +35,6 @@ EXPORTS += [ 'GMPAudioDecoderProxy.h', 'GMPAudioHost.h', 'GMPCallbackBase.h', - 'GMPCDMCallbackProxy.h', - 'GMPCDMProxy.h', 'GMPChild.h', 'GMPContentChild.h', 'GMPContentParent.h', @@ -73,6 +71,12 @@ EXPORTS += [ 'GMPVideoPlaneImpl.h', ] +if CONFIG['MOZ_EME']: + EXPORTS += [ + 'GMPCDMCallbackProxy.h', + 'GMPCDMProxy.h', + ] + # We link GMPLoader into xul on B2G/Fennec as its code does not need to be # covered by a DRM vendor's voucher. if CONFIG['OS_TARGET'] == 'Android': @@ -87,8 +91,6 @@ UNIFIED_SOURCES += [ 'GMPAudioDecoderChild.cpp', 'GMPAudioDecoderParent.cpp', 'GMPAudioHost.cpp', - 'GMPCDMCallbackProxy.cpp', - 'GMPCDMProxy.cpp', 'GMPChild.cpp', 'GMPContentChild.cpp', 'GMPContentParent.cpp', @@ -120,6 +122,12 @@ UNIFIED_SOURCES += [ 'GMPVideoPlaneImpl.cpp', ] +if CONFIG['MOZ_EME']: + UNIFIED_SOURCES += [ + 'GMPCDMCallbackProxy.cpp', + 'GMPCDMProxy.cpp', + ] + DIRS += [ 'rlz', 'widevine-adapter', |