summaryrefslogtreecommitdiff
path: root/mozilla-1670333.patch
diff options
context:
space:
mode:
Diffstat (limited to 'mozilla-1670333.patch')
-rw-r--r--mozilla-1670333.patch71
1 files changed, 39 insertions, 32 deletions
diff --git a/mozilla-1670333.patch b/mozilla-1670333.patch
index a7c7f8a..01dfb25 100644
--- a/mozilla-1670333.patch
+++ b/mozilla-1670333.patch
@@ -1,6 +1,6 @@
-diff -up firefox-82.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-82.0/dom/media/mp4/MP4Demuxer.cpp
---- firefox-82.0/dom/media/mp4/MP4Demuxer.cpp.1670333 2020-10-14 19:20:18.000000000 +0200
-+++ firefox-82.0/dom/media/mp4/MP4Demuxer.cpp 2020-10-19 20:56:38.362039524 +0200
+diff -up firefox-84.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-84.0/dom/media/mp4/MP4Demuxer.cpp
+--- firefox-84.0/dom/media/mp4/MP4Demuxer.cpp.1670333 2020-12-07 23:32:59.000000000 +0100
++++ firefox-84.0/dom/media/mp4/MP4Demuxer.cpp 2020-12-10 14:07:49.095266466 +0100
@@ -31,6 +31,8 @@ mozilla::LogModule* GetDemuxerLog() { re
DDMOZ_LOG(gMediaDemuxerLog, mozilla::LogLevel::Debug, "::%s: " arg, \
__func__, ##__VA_ARGS__)
@@ -23,10 +23,10 @@ diff -up firefox-82.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-82.0/dom/medi
if (sample->mKeyframe != keyframe) {
NS_WARNING(nsPrintfCString("Frame incorrectly marked as %skeyframe "
"@ pts:%" PRId64 " dur:%" PRId64
-diff -up firefox-82.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-82.0/dom/media/platforms/PDMFactory.cpp
---- firefox-82.0/dom/media/platforms/PDMFactory.cpp.1670333 2020-10-14 19:20:18.000000000 +0200
-+++ firefox-82.0/dom/media/platforms/PDMFactory.cpp 2020-10-19 20:53:14.631214334 +0200
-@@ -49,6 +49,8 @@
+diff -up firefox-84.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-84.0/dom/media/platforms/PDMFactory.cpp
+--- firefox-84.0/dom/media/platforms/PDMFactory.cpp.1670333 2020-12-10 14:07:49.095266466 +0100
++++ firefox-84.0/dom/media/platforms/PDMFactory.cpp 2020-12-10 15:29:28.969006031 +0100
+@@ -52,6 +52,8 @@
#include <functional>
@@ -34,35 +34,42 @@ diff -up firefox-82.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-82.0/do
+
namespace mozilla {
- extern already_AddRefed<PlatformDecoderModule> CreateBlankDecoderModule();
-@@ -380,7 +382,8 @@ void PDMFactory::CreatePDMs() {
+ // Set on the main thread, in content processes before any PDMFactory will ever
+@@ -522,9 +524,11 @@ void PDMFactory::CreateContentPDMs() {
+ }
+ #endif
#ifdef MOZ_FFMPEG
- if (StaticPrefs::media_ffmpeg_enabled()) {
- m = FFmpegRuntimeLinker::CreateDecoderModule();
-- mFFmpegFailedToLoad = !StartupPDM(m);
-+ mFFmpegUsed = StartupPDM(m);
-+ mFFmpegFailedToLoad = !mFFmpegUsed;
- } else {
- mFFmpegFailedToLoad = false;
+- if (StaticPrefs::media_ffmpeg_enabled() &&
+- !CreateAndStartupPDM<FFmpegRuntimeLinker>()) {
+- mFailureFlags += DecoderDoctorDiagnostics::Flags::FFmpegFailedToLoad;
++ if (StaticPrefs::media_ffmpeg_enabled()) {
++ mFFmpegUsed = CreateAndStartupPDM<FFmpegRuntimeLinker>();
++ if (!mFFmpegUsed) {
++ mFailureFlags += DecoderDoctorDiagnostics::Flags::FFmpegFailedToLoad;
++ }
}
-@@ -395,7 +398,8 @@ void PDMFactory::CreatePDMs() {
- m = new AgnosticDecoderModule();
- StartupPDM(m);
+ #endif
+ #ifdef MOZ_WIDGET_ANDROID
+@@ -536,8 +540,9 @@ void PDMFactory::CreateContentPDMs() {
+
+ CreateAndStartupPDM<AgnosticDecoderModule>();
-- if (StaticPrefs::media_gmp_decoder_enabled()) {
-+ if (StaticPrefs::media_gmp_decoder_enabled() && !mFFmpegUsed) {
+- if (StaticPrefs::media_gmp_decoder_enabled() &&
++ if (StaticPrefs::media_gmp_decoder_enabled() && !mFFmpegUsed &&
+ !CreateAndStartupPDM<GMPDecoderModule>()) {
+ gUseKeyframeFromContainer = true;
- m = new GMPDecoderModule();
- mGMPPDMFailedToStartup = !StartupPDM(m);
- } else {
-diff -up firefox-82.0/dom/media/platforms/PDMFactory.h.1670333 firefox-82.0/dom/media/platforms/PDMFactory.h
---- firefox-82.0/dom/media/platforms/PDMFactory.h.1670333 2020-10-14 19:20:18.000000000 +0200
-+++ firefox-82.0/dom/media/platforms/PDMFactory.h 2020-10-19 20:53:14.631214334 +0200
-@@ -70,6 +70,7 @@ class PDMFactory final {
+ mFailureFlags += DecoderDoctorDiagnostics::Flags::GMPPDMFailedToStartup;
+ }
+ }
+diff -up firefox-84.0/dom/media/platforms/PDMFactory.h.1670333 firefox-84.0/dom/media/platforms/PDMFactory.h
+--- firefox-84.0/dom/media/platforms/PDMFactory.h.1670333 2020-12-10 14:07:49.096266493 +0100
++++ firefox-84.0/dom/media/platforms/PDMFactory.h 2020-12-10 15:27:42.363034881 +0100
+@@ -116,6 +116,8 @@ class PDMFactory final {
- bool mWMFFailedToLoad = false;
- bool mFFmpegFailedToLoad = false;
-+ bool mFFmpegUsed = false;
- bool mGMPPDMFailedToStartup = false;
+ DecoderDoctorDiagnostics::FlagsSet mFailureFlags;
++ bool mFFmpegUsed = false;
++
friend class RemoteVideoDecoderParent;
+ static void EnsureInit();
+ template <class T>
bgstack15