File chromium-133-bring_back_and_disable_allowlist.patch of Package chromium
--- chromium-133.0.6943.98/media/base/media_switches.h 2025/02/18 15:56:48 1.1
+++ chromium-133.0.6943.98/media/base/media_switches.h 2025/02/18 15:57:20
@@ -516,6 +516,8 @@
MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseWindowBoundsForPip);
+MEDIA_EXPORT BASE_DECLARE_FEATURE(kFFmpegAllowLists);
+
MEDIA_EXPORT BASE_DECLARE_FEATURE(kMediaLogToConsole);
MEDIA_EXPORT BASE_DECLARE_FEATURE(kLibvpxUseChromeThreads);
--- chromium-133.0.6943.98/media/base/media_switches.cc 2025/02/18 15:56:07 1.1
+++ chromium-133.0.6943.98/media/base/media_switches.cc 2025/02/18 15:56:48
@@ -1657,6 +1657,11 @@
"UseWindowBoundsForPip",
base::FEATURE_ENABLED_BY_DEFAULT);
+// Enables FFmpeg allow lists for supported codecs / containers.
+BASE_FEATURE(kFFmpegAllowLists,
+ "FFmpegAllowLists",
+ base::FEATURE_DISABLED_BY_DEFAULT);
+
#if BUILDFLAG(IS_WIN)
// Enables audio offload when supported by endpoints.
BASE_FEATURE(kAudioOffload, "AudioOffload", base::FEATURE_DISABLED_BY_DEFAULT);
--- chromium-133.0.6943.98/media/ffmpeg/ffmpeg_common.cc 2025/02/18 16:03:18 1.1
+++ chromium-133.0.6943.98/media/ffmpeg/ffmpeg_common.cc 2025/02/18 16:04:02
@@ -19,6 +19,7 @@
#include "media/base/audio_decoder_config.h"
#include "media/base/decoder_buffer.h"
#include "media/base/encryption_scheme.h"
+#include "media/base/media_switches.h"
#include "media/base/media_util.h"
#include "media/base/supported_types.h"
#include "media/base/video_aspect_ratio.h"
@@ -76,7 +76,8 @@
void ApplyCodecContextSecuritySettings(AVCodecContext* codec_context) {
// Future versions of ffmpeg may copy the allow list from the format
// context.
- if (!codec_context->codec_whitelist) {
+ if (base::FeatureList::IsEnabled(kFFmpegAllowLists) &&
+ !codec_context->codec_whitelist) {
// Note: FFmpeg will try to free this string, so we must duplicate it.
codec_context->codec_whitelist =
av_strdup(codec_context->codec_type == AVMEDIA_TYPE_AUDIO
--- chromium-133.0.6943.98/media/filters/ffmpeg_glue.cc 2025/02/18 16:06:06 1.1
+++ chromium-133.0.6943.98/media/filters/ffmpeg_glue.cc 2025/02/18 16:07:06
@@ -131,8 +131,10 @@
// memory usage.
//
// Note: FFmpeg will try to free these strings, so we must duplicate them.
- format_context_->codec_whitelist = av_strdup(GetAllowedAudioDecoders());
- format_context_->format_whitelist = av_strdup(GetAllowedDemuxers());
+ if (base::FeatureList::IsEnabled(kFFmpegAllowLists)) {
+ format_context_->codec_whitelist = av_strdup(GetAllowedAudioDecoders());
+ format_context_->format_whitelist = av_strdup(GetAllowedDemuxers());
+ }
}
bool FFmpegGlue::OpenContext(bool is_local_file) {