* [PR PATCH] chromium: update to 121.0.6167.85.
@ 2024-01-25 15:39 Duncaen
2024-02-10 23:38 ` [PR PATCH] [Updated] " Duncaen
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Duncaen @ 2024-01-25 15:39 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 406 bytes --]
There is a new pull request by Duncaen against master on the void-packages repository
https://github.com/Duncaen/void-packages chromium-121
https://github.com/void-linux/void-packages/pull/48367
chromium: update to 121.0.6167.85.
[ci skip]
* [ ] x86_64-glibc
* [ ] x86_64-musl
* [ ] aarch64-musl
* [ ] i686
A patch file from https://github.com/void-linux/void-packages/pull/48367.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-chromium-121-48367.patch --]
[-- Type: text/x-diff, Size: 129243 bytes --]
From 50f143645627df8550f45162bf9f783e4d5c2c7b Mon Sep 17 00:00:00 2001
From: Duncaen <duncaen@voidlinux.org>
Date: Thu, 25 Jan 2024 16:07:07 +0100
Subject: [PATCH] chromium: update to 121.0.6167.85.
---
...ERT-roll-src-third_party-ffmpeg-m102.patch | 333 -------------
...oll-src-third_party-ffmpeg-m102.patch.args | 1 -
...ERT-roll-src-third_party-ffmpeg-m106.patch | 55 ---
...oll-src-third_party-ffmpeg-m106.patch.args | 1 -
.../chromium-120-arm64-memory_tagging.patch | 14 -
...romium-120-el7-clang-version-warning.patch | 16 -
.../chromium-120-gn-workaround-atspi.patch | 13 -
| 459 ------------------
.../chromium-121-arm64-memory_tagging.patch | 13 +
.../patches/chromium-121-constexpr.patch | 12 +
...romium-121-el7-clang-version-warning.patch | 15 +
...onstructor-involving-anonymous-union.patch | 12 +
| 459 ++++++++++++++++++
.../patches/chromium-121-mnemonic-error.patch | 12 +
...hromium-121-no_matching_constructor.patch} | 407 ++++++++++++----
...-121-nullptr_t-without-namespace-std.patch | 12 +
...-121-python3-invalid-escape-sequence.patch | 77 +++
.../patches/chromium-121-rust-clang_lib.patch | 22 +
...m-121-rust-without-profiler_builtins.patch | 10 +
.../chromium-121-system-old-ffmpeg.patch | 34 ++
...name.patch => chromium-121-typename.patch} | 54 +++
...around_clang_bug-structured_binding.patch} | 20 +-
srcpkgs/chromium/template | 13 +-
23 files changed, 1057 insertions(+), 1007 deletions(-)
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
delete mode 100644 srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-constexpr.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
rename srcpkgs/chromium/patches/{chromium-120-no_matching_constructor.patch => chromium-121-no_matching_constructor.patch} (75%)
create mode 100644 srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-system-old-ffmpeg.patch
rename srcpkgs/chromium/patches/{chromium-120-typename.patch => chromium-121-typename.patch} (78%)
rename srcpkgs/chromium/patches/{chromium-120-workaround_clang_bug-structured_binding.patch => chromium-121-workaround_clang_bug-structured_binding.patch} (75%)
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
deleted file mode 100644
index e739b40a2733c..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
+++ /dev/null
@@ -1,333 +0,0 @@
-From 6e554a30893150793c2638e3689cf208ffc8e375 Mon Sep 17 00:00:00 2001
-From: Dale Curtis <dalecurtis@chromium.org>
-Date: Sat, 2 Apr 2022 05:13:53 +0000
-Subject: [PATCH] Roll src/third_party/ffmpeg/ 574c39cce..32b2d1d526 (1125
- commits)
-
-https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/574c39cce323..32b2d1d526
-
-Created with:
- roll-dep src/third_party/ffmpeg
-
-Fixed: 1293918
-Cq-Include-Trybots: luci.chromium.try:mac_chromium_asan_rel_ng,linux_chromium_asan_rel_ng,linux_chromium_chromeos_asan_rel_ng
-Change-Id: I41945d0f963e3d1f65940067bac22f63b68e37d2
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3565647
-Auto-Submit: Dale Curtis <dalecurtis@chromium.org>
-Reviewed-by: Dan Sanders <sandersd@chromium.org>
-Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#988253}
----
- .../clear_key_cdm/ffmpeg_cdm_audio_decoder.cc | 29 ++++++++++---------
- media/ffmpeg/ffmpeg_common.cc | 11 +++----
- media/filters/audio_file_reader.cc | 9 +++---
- media/filters/audio_file_reader_unittest.cc | 6 ++--
- .../filters/audio_video_metadata_extractor.cc | 11 +++++--
- .../filters/ffmpeg_aac_bitstream_converter.cc | 7 +++--
- ...ffmpeg_aac_bitstream_converter_unittest.cc | 2 +-
- media/filters/ffmpeg_audio_decoder.cc | 13 +++++----
- 8 files changed, 51 insertions(+), 37 deletions(-)
-
-diff --git a/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc b/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-index e4fc3f460e2..9b1ad9f7675 100644
---- a/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-+++ b/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-@@ -74,7 +74,7 @@ void CdmAudioDecoderConfigToAVCodecContext(
- codec_context->sample_fmt = AV_SAMPLE_FMT_NONE;
- }
-
-- codec_context->channels = config.channel_count;
-+ codec_context->ch_layout.nb_channels = config.channel_count;
- codec_context->sample_rate = config.samples_per_second;
-
- if (config.extra_data) {
-@@ -124,8 +124,8 @@ void CopySamples(cdm::AudioFormat cdm_format,
- case cdm::kAudioFormatPlanarS16:
- case cdm::kAudioFormatPlanarF32: {
- const int decoded_size_per_channel =
-- decoded_audio_size / av_frame.channels;
-- for (int i = 0; i < av_frame.channels; ++i) {
-+ decoded_audio_size / av_frame.ch_layout.nb_channels;
-+ for (int i = 0; i < av_frame.ch_layout.nb_channels; ++i) {
- memcpy(output_buffer, av_frame.extended_data[i],
- decoded_size_per_channel);
- output_buffer += decoded_size_per_channel;
-@@ -185,13 +185,14 @@ bool FFmpegCdmAudioDecoder::Initialize(
- // Success!
- decoding_loop_ = std::make_unique<FFmpegDecodingLoop>(codec_context_.get());
- samples_per_second_ = config.samples_per_second;
-- bytes_per_frame_ = codec_context_->channels * config.bits_per_channel / 8;
-+ bytes_per_frame_ =
-+ codec_context_->ch_layout.nb_channels * config.bits_per_channel / 8;
- output_timestamp_helper_ =
- std::make_unique<AudioTimestampHelper>(config.samples_per_second);
- is_initialized_ = true;
-
- // Store initial values to guard against midstream configuration changes.
-- channels_ = codec_context_->channels;
-+ channels_ = codec_context_->ch_layout.nb_channels;
- av_sample_format_ = codec_context_->sample_fmt;
-
- return true;
-@@ -291,17 +292,19 @@ cdm::Status FFmpegCdmAudioDecoder::DecodeBuffer(
- for (auto& frame : audio_frames) {
- int decoded_audio_size = 0;
- if (frame->sample_rate != samples_per_second_ ||
-- frame->channels != channels_ || frame->format != av_sample_format_) {
-+ frame->ch_layout.nb_channels != channels_ ||
-+ frame->format != av_sample_format_) {
- DLOG(ERROR) << "Unsupported midstream configuration change!"
- << " Sample Rate: " << frame->sample_rate << " vs "
-- << samples_per_second_ << ", Channels: " << frame->channels
-- << " vs " << channels_ << ", Sample Format: " << frame->format
-- << " vs " << av_sample_format_;
-+ << samples_per_second_
-+ << ", Channels: " << frame->ch_layout.nb_channels << " vs "
-+ << channels_ << ", Sample Format: " << frame->format << " vs "
-+ << av_sample_format_;
- return cdm::kDecodeError;
- }
-
- decoded_audio_size = av_samples_get_buffer_size(
-- nullptr, codec_context_->channels, frame->nb_samples,
-+ nullptr, codec_context_->ch_layout.nb_channels, frame->nb_samples,
- codec_context_->sample_fmt, 1);
- if (!decoded_audio_size)
- continue;
-@@ -320,9 +323,9 @@ bool FFmpegCdmAudioDecoder::OnNewFrame(
- size_t* total_size,
- std::vector<std::unique_ptr<AVFrame, ScopedPtrAVFreeFrame>>* audio_frames,
- AVFrame* frame) {
-- *total_size += av_samples_get_buffer_size(nullptr, codec_context_->channels,
-- frame->nb_samples,
-- codec_context_->sample_fmt, 1);
-+ *total_size += av_samples_get_buffer_size(
-+ nullptr, codec_context_->ch_layout.nb_channels, frame->nb_samples,
-+ codec_context_->sample_fmt, 1);
- audio_frames->emplace_back(av_frame_clone(frame));
- return true;
- }
-diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc
-index 87ca8969626..76f03d6608e 100644
---- a/media/ffmpeg/ffmpeg_common.cc
-+++ b/media/ffmpeg/ffmpeg_common.cc
-@@ -345,10 +345,11 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
- codec_context->sample_fmt, codec_context->codec_id);
-
- ChannelLayout channel_layout =
-- codec_context->channels > 8
-+ codec_context->ch_layout.nb_channels > 8
- ? CHANNEL_LAYOUT_DISCRETE
-- : ChannelLayoutToChromeChannelLayout(codec_context->channel_layout,
-- codec_context->channels);
-+ : ChannelLayoutToChromeChannelLayout(
-+ codec_context->ch_layout.u.mask,
-+ codec_context->ch_layout.nb_channels);
-
- int sample_rate = codec_context->sample_rate;
- switch (codec) {
-@@ -401,7 +402,7 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
- extra_data, encryption_scheme, seek_preroll,
- codec_context->delay);
- if (channel_layout == CHANNEL_LAYOUT_DISCRETE)
-- config->SetChannelsForDiscrete(codec_context->channels);
-+ config->SetChannelsForDiscrete(codec_context->ch_layout.nb_channels);
-
- #if BUILDFLAG(ENABLE_PLATFORM_AC3_EAC3_AUDIO)
- // These are bitstream formats unknown to ffmpeg, so they don't have
-@@ -470,7 +471,7 @@ void AudioDecoderConfigToAVCodecContext(const AudioDecoderConfig& config,
-
- // TODO(scherkus): should we set |channel_layout|? I'm not sure if FFmpeg uses
- // said information to decode.
-- codec_context->channels = config.channels();
-+ codec_context->ch_layout.nb_channels = config.channels();
- codec_context->sample_rate = config.samples_per_second();
-
- if (config.extra_data().empty()) {
-diff --git a/media/filters/audio_file_reader.cc b/media/filters/audio_file_reader.cc
-index 5f257bdfaa6..e1be5aa9a5b 100644
---- a/media/filters/audio_file_reader.cc
-+++ b/media/filters/audio_file_reader.cc
-@@ -113,14 +113,15 @@ bool AudioFileReader::OpenDecoder() {
-
- // Verify the channel layout is supported by Chrome. Acts as a sanity check
- // against invalid files. See http://crbug.com/171962
-- if (ChannelLayoutToChromeChannelLayout(codec_context_->channel_layout,
-- codec_context_->channels) ==
-+ if (ChannelLayoutToChromeChannelLayout(
-+ codec_context_->ch_layout.u.mask,
-+ codec_context_->ch_layout.nb_channels) ==
- CHANNEL_LAYOUT_UNSUPPORTED) {
- return false;
- }
-
- // Store initial values to guard against midstream configuration changes.
-- channels_ = codec_context_->channels;
-+ channels_ = codec_context_->ch_layout.nb_channels;
- audio_codec_ = CodecIDToAudioCodec(codec_context_->codec_id);
- sample_rate_ = codec_context_->sample_rate;
- av_sample_format_ = codec_context_->sample_fmt;
-@@ -223,7 +224,7 @@ bool AudioFileReader::OnNewFrame(
- if (frames_read < 0)
- return false;
-
-- const int channels = frame->channels;
-+ const int channels = frame->ch_layout.nb_channels;
- if (frame->sample_rate != sample_rate_ || channels != channels_ ||
- frame->format != av_sample_format_) {
- DLOG(ERROR) << "Unsupported midstream configuration change!"
-diff --git a/media/filters/audio_file_reader_unittest.cc b/media/filters/audio_file_reader_unittest.cc
-index 2aba7927a31..1f45a50cace 100644
---- a/media/filters/audio_file_reader_unittest.cc
-+++ b/media/filters/audio_file_reader_unittest.cc
-@@ -121,11 +121,11 @@ class AudioFileReaderTest : public testing::Test {
- EXPECT_FALSE(reader_->Open());
- }
-
-- void RunTestFailingDecode(const char* fn) {
-+ void RunTestFailingDecode(const char* fn, int expect_read = 0) {
- Initialize(fn);
- EXPECT_TRUE(reader_->Open());
- std::vector<std::unique_ptr<AudioBus>> decoded_audio_packets;
-- EXPECT_EQ(reader_->Read(&decoded_audio_packets), 0);
-+ EXPECT_EQ(reader_->Read(&decoded_audio_packets), expect_read);
- }
-
- void RunTestPartialDecode(const char* fn) {
-@@ -219,7 +219,7 @@ TEST_F(AudioFileReaderTest, AAC_ADTS) {
- }
-
- TEST_F(AudioFileReaderTest, MidStreamConfigChangesFail) {
-- RunTestFailingDecode("midstream_config_change.mp3");
-+ RunTestFailingDecode("midstream_config_change.mp3", 42624);
- }
- #endif
-
-diff --git a/media/filters/audio_video_metadata_extractor.cc b/media/filters/audio_video_metadata_extractor.cc
-index 185819eb936..69ff508c221 100644
---- a/media/filters/audio_video_metadata_extractor.cc
-+++ b/media/filters/audio_video_metadata_extractor.cc
-@@ -113,6 +113,15 @@ bool AudioVideoMetadataExtractor::Extract(DataSource* source,
- if (!stream)
- continue;
-
-+ void* display_matrix =
-+ av_stream_get_side_data(stream, AV_PKT_DATA_DISPLAYMATRIX, nullptr);
-+ if (display_matrix) {
-+ rotation_ = VideoTransformation::FromFFmpegDisplayMatrix(
-+ static_cast<int32_t*>(display_matrix))
-+ .rotation;
-+ info.tags["rotate"] = base::NumberToString(rotation_);
-+ }
-+
- // Extract dictionary from streams also. Needed for containers that attach
- // metadata to contained streams instead the container itself, like OGG.
- ExtractDictionary(stream->metadata, &info.tags);
-@@ -255,8 +264,6 @@ void AudioVideoMetadataExtractor::ExtractDictionary(AVDictionary* metadata,
- if (raw_tags->find(tag->key) == raw_tags->end())
- (*raw_tags)[tag->key] = tag->value;
-
-- if (ExtractInt(tag, "rotate", &rotation_))
-- continue;
- if (ExtractString(tag, "album", &album_))
- continue;
- if (ExtractString(tag, "artist", &artist_))
-diff --git a/media/filters/ffmpeg_aac_bitstream_converter.cc b/media/filters/ffmpeg_aac_bitstream_converter.cc
-index 6f231c85729..ca5e5fb927d 100644
---- a/media/filters/ffmpeg_aac_bitstream_converter.cc
-+++ b/media/filters/ffmpeg_aac_bitstream_converter.cc
-@@ -195,14 +195,15 @@ bool FFmpegAACBitstreamConverter::ConvertPacket(AVPacket* packet) {
- if (!header_generated_ || codec_ != stream_codec_parameters_->codec_id ||
- audio_profile_ != stream_codec_parameters_->profile ||
- sample_rate_index_ != sample_rate_index ||
-- channel_configuration_ != stream_codec_parameters_->channels ||
-+ channel_configuration_ !=
-+ stream_codec_parameters_->ch_layout.nb_channels ||
- frame_length_ != header_plus_packet_size) {
- header_generated_ =
- GenerateAdtsHeader(stream_codec_parameters_->codec_id,
- 0, // layer
- stream_codec_parameters_->profile, sample_rate_index,
- 0, // private stream
-- stream_codec_parameters_->channels,
-+ stream_codec_parameters_->ch_layout.nb_channels,
- 0, // originality
- 0, // home
- 0, // copyrighted_stream
-@@ -214,7 +215,7 @@ bool FFmpegAACBitstreamConverter::ConvertPacket(AVPacket* packet) {
- codec_ = stream_codec_parameters_->codec_id;
- audio_profile_ = stream_codec_parameters_->profile;
- sample_rate_index_ = sample_rate_index;
-- channel_configuration_ = stream_codec_parameters_->channels;
-+ channel_configuration_ = stream_codec_parameters_->ch_layout.nb_channels;
- frame_length_ = header_plus_packet_size;
- }
-
-diff --git a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-index 1fd4c5ccd7d..f59bcd8fdaf 100644
---- a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-+++ b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-@@ -34,7 +34,7 @@ class FFmpegAACBitstreamConverterTest : public testing::Test {
- memset(&test_parameters_, 0, sizeof(AVCodecParameters));
- test_parameters_.codec_id = AV_CODEC_ID_AAC;
- test_parameters_.profile = FF_PROFILE_AAC_MAIN;
-- test_parameters_.channels = 2;
-+ test_parameters_.ch_layout.nb_channels = 2;
- test_parameters_.extradata = extradata_header_;
- test_parameters_.extradata_size = sizeof(extradata_header_);
- }
-diff --git a/media/filters/ffmpeg_audio_decoder.cc b/media/filters/ffmpeg_audio_decoder.cc
-index 6a56c675f7d..4615fdeb3fb 100644
---- a/media/filters/ffmpeg_audio_decoder.cc
-+++ b/media/filters/ffmpeg_audio_decoder.cc
-@@ -28,7 +28,7 @@ namespace media {
-
- // Return the number of channels from the data in |frame|.
- static inline int DetermineChannels(AVFrame* frame) {
-- return frame->channels;
-+ return frame->ch_layout.nb_channels;
- }
-
- // Called by FFmpeg's allocation routine to allocate a buffer. Uses
-@@ -231,7 +231,7 @@ bool FFmpegAudioDecoder::OnNewFrame(const DecoderBuffer& buffer,
- // Translate unsupported into discrete layouts for discrete configurations;
- // ffmpeg does not have a labeled discrete configuration internally.
- ChannelLayout channel_layout = ChannelLayoutToChromeChannelLayout(
-- codec_context_->channel_layout, codec_context_->channels);
-+ codec_context_->ch_layout.u.mask, codec_context_->ch_layout.nb_channels);
- if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED &&
- config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE) {
- channel_layout = CHANNEL_LAYOUT_DISCRETE;
-@@ -348,11 +348,11 @@ bool FFmpegAudioDecoder::ConfigureDecoder(const AudioDecoderConfig& config) {
- // Success!
- av_sample_format_ = codec_context_->sample_fmt;
-
-- if (codec_context_->channels != config.channels()) {
-+ if (codec_context_->ch_layout.nb_channels != config.channels()) {
- MEDIA_LOG(ERROR, media_log_)
- << "Audio configuration specified " << config.channels()
- << " channels, but FFmpeg thinks the file contains "
-- << codec_context_->channels << " channels";
-+ << codec_context_->ch_layout.nb_channels << " channels";
- ReleaseFFmpegResources();
- state_ = DecoderState::kUninitialized;
- return false;
-@@ -403,7 +403,7 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
- if (frame->nb_samples <= 0)
- return AVERROR(EINVAL);
-
-- if (s->channels != channels) {
-+ if (s->ch_layout.nb_channels != channels) {
- DLOG(ERROR) << "AVCodecContext and AVFrame disagree on channel count.";
- return AVERROR(EINVAL);
- }
-@@ -436,7 +436,8 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
- ChannelLayout channel_layout =
- config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE
- ? CHANNEL_LAYOUT_DISCRETE
-- : ChannelLayoutToChromeChannelLayout(s->channel_layout, s->channels);
-+ : ChannelLayoutToChromeChannelLayout(s->ch_layout.u.mask,
-+ s->ch_layout.nb_channels);
-
- if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED) {
- DLOG(ERROR) << "Unsupported channel layout.";
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
deleted file mode 100644
index 8bbbbe9483632..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
+++ /dev/null
@@ -1 +0,0 @@
--RNp1
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
deleted file mode 100644
index b2a113791734c..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From ded379824f5de39357b6b1894578101aba5cdf05 Mon Sep 17 00:00:00 2001
-From: Eugene Zemtsov <eugene@chromium.org>
-Date: Fri, 29 Jul 2022 04:41:04 +0000
-Subject: [PATCH] Roll src/third_party/ffmpeg/ 880df5ede..b71ecd02b (279
- commits)
-
-https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/880df5ede50a..b71ecd02b479
-
-$ git log 880df5ede..b71ecd02b --date=short --no-merges --format='%ad %ae %s'
-2022-07-27 eugene Roll for M106
-2022-07-25 andreas.rheinhardt avcodec/x86/pngdsp: Remove obsolete ff_add_bytes_l2_mmx()
-2022-07-22 andreas.rheinhardt avcodec/hevcdec: Output MD5-message in one piece
-2022-07-24 epirat07 configure: properly require libx264 if enabled
-2022-07-24 zane avformat/argo_cvg: expose loop/reverb/checksum via metadata
-(...)
-2022-05-03 leo.izen avcodec/libjxldec: properly tag output colorspace
-2022-06-25 ffmpeg avfilter/Makefile: always make colorspace.o
-2022-03-02 brad avutil/ppc/cpu: Use proper header for OpenBSD PPC CPU detection
-2022-06-24 jamrial avformat/http: include version.h
-2022-05-16 mbonda-at-nvidia.com AV1 VDPAU hwaccel Decode support
-
-Created with:
- roll-dep src/third_party/ffmpeg
-
-ffmpeg usage fix:
- Switch from AVFrame::pkt_duration to AVFrame::duration,
- AVFrame::pkt_duration is deprecated
-
-Bug: 1344646
-Change-Id: Iaa3abf48ef81dae6d282bca8f0fa2a8dffeeba25
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3788638
-Reviewed-by: Will Cassella <cassew@chromium.org>
-Commit-Queue: Eugene Zemtsov <eugene@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#1029623}
----
- media/filters/audio_file_reader.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/media/filters/audio_file_reader.cc b/media/filters/audio_file_reader.cc
-index e1be5aa9a5b..951c003956f 100644
---- a/media/filters/audio_file_reader.cc
-+++ b/media/filters/audio_file_reader.cc
-@@ -243,10 +243,10 @@ bool AudioFileReader::OnNewFrame(
- // silence from being output. In the case where we are also discarding some
- // portion of the packet (as indicated by a negative pts), we further want to
- // adjust the duration downward by however much exists before zero.
-- if (audio_codec_ == AudioCodec::kAAC && frame->pkt_duration) {
-+ if (audio_codec_ == AudioCodec::kAAC && frame->duration) {
- const base::TimeDelta pkt_duration = ConvertFromTimeBase(
- glue_->format_context()->streams[stream_index_]->time_base,
-- frame->pkt_duration + std::min(static_cast<int64_t>(0), frame->pts));
-+ frame->duration + std::min(static_cast<int64_t>(0), frame->pts));
- const base::TimeDelta frame_duration =
- base::Seconds(frames_read / static_cast<double>(sample_rate_));
-
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
deleted file mode 100644
index 8bbbbe9483632..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
+++ /dev/null
@@ -1 +0,0 @@
--RNp1
diff --git a/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch b/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
deleted file mode 100644
index bb461ef3664a2..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- chromium-120.0.6099.35/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.than 2023-11-26 13:50:07.005519877 +0100
-+++ chromium-120.0.6099.35/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h 2023-11-26 13:50:49.727267240 +0100
-@@ -152,10 +152,7 @@
- (!BUILDFLAG(PUT_REF_COUNT_IN_PREVIOUS_SLOT) && \
- defined(ARCH_CPU_LITTLE_ENDIAN))
-
--#define PA_CONFIG_HAS_MEMORY_TAGGING() \
-- (defined(ARCH_CPU_ARM64) && defined(__clang__) && \
-- !defined(ADDRESS_SANITIZER) && \
-- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)))
-+#define PA_CONFIG_HAS_MEMORY_TAGGING() 0
-
- #if PA_CONFIG(HAS_MEMORY_TAGGING)
- static_assert(sizeof(void*) == 8);
diff --git a/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch b/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
deleted file mode 100644
index 112da65b4d9b6..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -up chromium-120.0.6099.56/third_party/libc++/src/include/__config.me chromium-120.0.6099.56/third_party/libc++/src/include/__config
---- chromium-120.0.6099.56/third_party/libc++/src/include/__config.me 2023-12-03 00:05:51.254483474 +0100
-+++ chromium-120.0.6099.56/third_party/libc++/src/include/__config 2023-12-03 00:06:05.872863168 +0100
-@@ -32,11 +32,7 @@
-
- // Warn if a compiler version is used that is not supported anymore
- // LLVM RELEASE Update the minimum compiler versions
--# if defined(_LIBCPP_CLANG_VER)
--# if _LIBCPP_CLANG_VER < 1500
--# warning "Libc++ only supports Clang 15 and later"
--# endif
--# elif defined(_LIBCPP_APPLE_CLANG_VER)
-+# if defined(_LIBCPP_APPLE_CLANG_VER)
- # if _LIBCPP_APPLE_CLANG_VER < 1500
- # warning "Libc++ only supports AppleClang 15 and later"
- # endif
diff --git a/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch b/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
deleted file mode 100644
index 72c7b7ec41c28..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn.me chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn
---- chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn.me 2023-11-26 16:14:15.364064126 +0100
-+++ chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn 2023-11-26 16:41:16.877321990 +0100
-@@ -21,6 +21,9 @@ if (use_atk) {
- minor = atspi_version[1]
- micro = atspi_version[2]
-
-+ # gn workaround for the error: Assignment had no effect
-+ print("ATSPI Version: $major.$minor.$micro")
-+
- # ATSPI 2.49.90 now defines these for us and it's an error for us to
- # redefine them on the compiler command line.
- # See ATSPI 927344a34cd5bf81fc64da4968241735ecb4f03b
diff --git a/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch b/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
deleted file mode 100644
index 44f867475b218..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
+++ /dev/null
@@ -1,459 +0,0 @@
-diff -up chromium-110.0.5481.177/base/memory/ref_counted.h.me chromium-110.0.5481.177/base/memory/ref_counted.h
---- chromium-110.0.5481.177/base/memory/ref_counted.h.me 2023-02-23 13:34:33.174817255 -0500
-+++ chromium-110.0.5481.177/base/memory/ref_counted.h 2023-02-23 13:42:28.646052469 -0500
-@@ -6,6 +6,7 @@
- #define BASE_MEMORY_REF_COUNTED_H_
-
- #include <stddef.h>
-+#include <limits>
-
- #include <utility>
-
-diff -up chromium-109.0.5414.74/base/check_op.h.me chromium-109.0.5414.74/base/check_op.h
---- chromium-109.0.5414.74/base/check_op.h.me 2023-01-17 17:39:27.620875883 +0100
-+++ chromium-109.0.5414.74/base/check_op.h 2023-01-17 17:39:42.546060957 +0100
-@@ -5,6 +5,7 @@
- #ifndef BASE_CHECK_OP_H_
- #define BASE_CHECK_OP_H_
-
-+#include <cstdint>
- #include <cstddef>
- #include <string>
- #include <type_traits>
-diff -up chromium-109.0.5414.74/base/debug/profiler.h.me chromium-109.0.5414.74/base/debug/profiler.h
---- chromium-109.0.5414.74/base/debug/profiler.h.me 2023-01-17 16:29:26.368090073 +0100
-+++ chromium-109.0.5414.74/base/debug/profiler.h 2023-01-17 16:59:41.190628679 +0100
-@@ -7,6 +7,7 @@
-
- #include <stddef.h>
-
-+#include <cstdint>
- #include <string>
-
- #include "base/base_export.h"
-diff -up chromium-109.0.5414.74/gpu/config/gpu_feature_info.h.me chromium-109.0.5414.74/gpu/config/gpu_feature_info.h
---- chromium-109.0.5414.74/gpu/config/gpu_feature_info.h.me 2023-01-17 19:06:53.530675129 +0100
-+++ chromium-109.0.5414.74/gpu/config/gpu_feature_info.h 2023-01-17 19:07:08.874849879 +0100
-@@ -5,6 +5,7 @@
- #ifndef GPU_CONFIG_GPU_FEATURE_INFO_H_
- #define GPU_CONFIG_GPU_FEATURE_INFO_H_
-
-+#include <cstdint>
- #include <string>
- #include <vector>
-
-diff -up chromium-109.0.5414.74/net/base/net_export.h.me chromium-109.0.5414.74/net/base/net_export.h
---- chromium-109.0.5414.74/net/base/net_export.h.me 2023-01-17 18:16:34.133854615 +0100
-+++ chromium-109.0.5414.74/net/base/net_export.h 2023-01-17 18:16:15.945623153 +0100
-@@ -5,6 +5,8 @@
- #ifndef NET_BASE_NET_EXPORT_H_
- #define NET_BASE_NET_EXPORT_H_
-
-+#include <cstdint>
-+
- // Defines NET_EXPORT so that functionality implemented by the net module can
- // be exported to consumers, and NET_EXPORT_PRIVATE that allows unit tests to
- // access features not intended to be used directly by real consumers.
-diff -up chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h.me chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h
---- chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h.me 2023-01-17 17:12:34.184686515 +0100
-+++ chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h 2023-01-17 17:13:16.537162420 +0100
-@@ -5,6 +5,7 @@
- #ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
- #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
-
-+#include <cstdint>
- #include <bitset>
- #include <string>
-
-diff -up chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h.me chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h
---- chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h.me 2023-01-17 17:33:20.895717307 +0100
-+++ chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h 2023-01-17 17:34:03.456185365 +0100
-@@ -27,6 +27,7 @@
- #ifndef ABSL_STRINGS_STRING_VIEW_H_
- #define ABSL_STRINGS_STRING_VIEW_H_
-
-+#include <cstdint>
- #include <algorithm>
- #include <cassert>
- #include <cstddef>
-diff -up chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h.me chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h
---- chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h.me 2023-01-17 17:36:15.017616250 +0100
-+++ chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h 2023-01-17 17:36:48.960982195 +0100
-@@ -10,6 +10,7 @@
- #ifndef GLSLANG_SHADERVARS_H_
- #define GLSLANG_SHADERVARS_H_
-
-+#include <cstdint>
- #include <algorithm>
- #include <array>
- #include <string>
-diff -up chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.me chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h
---- chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.me 2023-01-17 19:17:40.480876171 +0100
-+++ chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h 2023-01-17 19:17:46.803958320 +0100
-@@ -5,6 +5,7 @@
- #ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
- #define THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
-
-+#include <cstdint>
- #include <array>
- #include <string>
-
-diff -up chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.me chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h
---- chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.me 2023-01-17 18:02:44.681538107 +0100
-+++ chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h 2023-01-17 18:02:57.208679140 +0100
-@@ -15,6 +15,7 @@
- #ifndef SRC_TINT_READER_SPIRV_NAMER_H_
- #define SRC_TINT_READER_SPIRV_NAMER_H_
-
-+#include <cstdint>
- #include <string>
- #include <unordered_map>
- #include <vector>
-diff -up chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.me chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h
---- chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.me 2023-01-18 15:22:38.472940648 +0100
-+++ chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h 2023-01-18 15:23:09.380255101 +0100
-@@ -5,6 +5,7 @@
- #ifndef DISCOVERY_DNSSD_PUBLIC_DNS_SD_TXT_RECORD_H_
- #define DISCOVERY_DNSSD_PUBLIC_DNS_SD_TXT_RECORD_H_
-
-+#include <cstdint>
- #include <functional>
- #include <map>
- #include <set>
-diff -up chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp.me chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp
---- chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp.me 2023-01-17 15:37:48.530626516 +0100
-+++ chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp 2023-01-17 16:57:46.025548092 +0100
-@@ -17,6 +17,7 @@
-
- #include "System/Debug.hpp"
-
-+#include <cstdint>
- #include <cstddef>
- #include <functional>
- #include <unordered_set>
-diff -up chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h.me chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h
---- chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h.me 2023-01-17 18:08:25.745491353 +0100
-+++ chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h 2023-01-17 18:08:35.777667632 +0100
-@@ -5,6 +5,7 @@
- #ifndef UI_GFX_LINEAR_GRADIENT_H_
- #define UI_GFX_LINEAR_GRADIENT_H_
-
-+#include <cstdint>
- #include <array>
- #include <string>
-
-diff -up chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h.me chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h
---- chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h.me 2023-01-19 10:10:21.287876736 +0100
-+++ chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h 2023-01-19 10:11:21.714778896 +0100
-@@ -17,6 +17,7 @@ limitations under the License.
- #define RUY_RUY_PROFILER_INSTRUMENTATION_H_
-
- #ifdef RUY_PROFILER
-+#include <string>
- #include <cstdio>
- #include <mutex>
- #include <vector>
-diff -up chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.me chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h
---- chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.me 2023-01-19 10:30:27.533861985 +0100
-+++ chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h 2023-01-19 10:31:12.585554183 +0100
-@@ -31,6 +31,7 @@ limitations under the License.
- #ifndef TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
- #define TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
-
-+#include <cstdint>
- #include <complex>
- #include <deque>
- #include <vector>
-diff -up chromium-109.0.5414.74/base/containers/flat_map.h.mee chromium-109.0.5414.74/base/containers/flat_map.h
---- chromium-109.0.5414.74/base/containers/flat_map.h.mee 2023-01-19 10:59:52.214957773 +0100
-+++ chromium-109.0.5414.74/base/containers/flat_map.h 2023-01-19 11:00:06.415215309 +0100
-@@ -5,6 +5,7 @@
- #ifndef BASE_CONTAINERS_FLAT_MAP_H_
- #define BASE_CONTAINERS_FLAT_MAP_H_
-
-+#include <cstdint>
- #include <functional>
- #include <tuple>
- #include <utility>
-diff -up chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h.mee chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h
---- chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h.mee 2023-01-19 10:36:40.571422826 +0100
-+++ chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h 2023-01-19 10:36:49.343565294 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_CRASH_CORE_APP_CRASH_REPORTER_CLIENT_H_
- #define COMPONENTS_CRASH_CORE_APP_CRASH_REPORTER_CLIENT_H_
-
-+#include <cstdint>
- #include <string>
-
- #include "build/build_config.h"
-diff -up chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h.mee chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h
---- chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h.mee 2023-01-19 11:45:15.953159755 +0100
-+++ chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h 2023-01-19 11:45:22.320246241 +0100
-@@ -5,6 +5,8 @@
- #ifndef UI_BASE_PREDICTION_KALMAN_FILTER_H_
- #define UI_BASE_PREDICTION_KALMAN_FILTER_H_
-
-+#include <cstdint>
-+
- #include "base/component_export.h"
- #include "ui/gfx/geometry/matrix3_f.h"
-
-diff -up chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h.me chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h
---- chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h.me 2023-01-19 15:20:07.620987949 +0100
-+++ chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h 2023-01-19 15:20:18.324173702 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
- #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
-
-+#include <cstdint>
- #include <string>
-
-
-diff -up chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h.me chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h
---- chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h.me 2023-01-19 16:00:14.350186515 +0100
-+++ chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h 2023-01-19 16:00:21.643307993 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
- #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
-
-+#include <cstdint>
- #include <string>
-
- namespace feature_engagement {
-diff -up chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h.me chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h
---- chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h.me 2023-01-19 15:59:18.210239416 +0100
-+++ chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h 2023-01-19 15:59:34.513515030 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
- #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
-
-+#include <cstdint>
- #include <string>
-
- #include "components/feature_engagement/internal/event_storage_validator.h"
-diff -up chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.me chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc
---- chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.me 2023-01-19 16:09:29.216477182 +0100
-+++ chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc 2023-01-19 16:10:05.657089208 +0100
-@@ -45,6 +45,7 @@
- #include "llvm/Support/SaveAndRestore.h"
- #include "llvm/Support/raw_ostream.h"
- #include <algorithm>
-+#include <cstdint>
- #include <string>
- #include <sysexits.h>
- #ifdef HAVE_BACKTRACE
-diff -up chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h.me chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h
---- chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h.me 2023-01-19 16:32:05.338160131 +0100
-+++ chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h 2023-01-19 16:32:16.213326798 +0100
-@@ -5,6 +5,7 @@
- #ifndef CHROME_BROWSER_PRIVACY_BUDGET_ENCOUNTERED_SURFACE_TRACKER_H_
- #define CHROME_BROWSER_PRIVACY_BUDGET_ENCOUNTERED_SURFACE_TRACKER_H_
-
-+#include <cstdint>
- #include <map>
-
- #include "base/containers/flat_set.h"
-diff -up chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h.me chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h
---- chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h.me 2023-01-19 16:47:55.548571102 +0100
-+++ chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h 2023-01-19 16:48:29.214146529 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
- #define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
-
-+#include <cstdint>
- #include <string>
-
- class GURL;
-diff -up chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h.me chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h
---- chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h.me 2023-01-19 16:57:29.525372814 +0100
-+++ chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h 2023-01-19 16:58:02.667979288 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
- #define COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
-
-+#include <cstdint>
- #include <string>
- #include <utility>
- #include <vector>
-diff -up chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h.me chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h
---- chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h.me 2023-01-19 17:02:45.258544665 +0100
-+++ chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h 2023-01-19 17:02:52.577611757 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
- #define COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
-
-+#include <cstdint>
- #include <stddef.h>
-
- #include <string>
-diff -up chromium-109.0.5414.74/pdf/document_attachment_info.h.me chromium-109.0.5414.74/pdf/document_attachment_info.h
---- chromium-109.0.5414.74/pdf/document_attachment_info.h.me 2023-01-19 17:28:28.552063534 +0100
-+++ chromium-109.0.5414.74/pdf/document_attachment_info.h 2023-01-19 17:28:48.072379953 +0100
-@@ -5,6 +5,7 @@
- #ifndef PDF_DOCUMENT_ATTACHMENT_INFO_H_
- #define PDF_DOCUMENT_ATTACHMENT_INFO_H_
-
-+#include <cstdint>
- #include <string>
-
-
-diff -up chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h.me chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h
---- chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h.me 2023-01-19 18:25:47.648193710 +0100
-+++ chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h 2023-01-19 18:26:11.488593556 +0100
-@@ -5,6 +5,8 @@
- #ifndef CONSTANTS_ANNOTATION_FLAGS_H_
- #define CONSTANTS_ANNOTATION_FLAGS_H_
-
-+#include <cstdint>
-+
- namespace pdfium {
- namespace annotation_flags {
-
-diff -up chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.me chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
---- chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.me 2023-04-15 16:44:55.344305412 +0200
-+++ chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h 2023-04-15 16:47:09.028666995 +0200
-@@ -2854,6 +2854,7 @@ static void vma_aligned_free(void* VMA_N
-
- // Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.
- #if VMA_STATS_STRING_ENABLED
-+#include <stdio.h>
- static inline void VmaUint32ToStr(char* VMA_NOT_NULL outStr, size_t strLen, uint32_t num)
- {
- snprintf(outStr, strLen, "%u", static_cast<unsigned int>(num));
-diff -up chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h.me chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h
---- chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h.me 2023-04-18 15:55:44.774916319 +0200
-+++ chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h 2023-04-18 15:55:54.441085882 +0200
-@@ -8,6 +8,7 @@
- #include <memory>
- #include <string>
- #include <vector>
-+#include <variant>
-
- #include "base/containers/span.h"
- #include "base/functional/callback_forward.h"
-diff -up chromium-113.0.5672.37/gin/time_clamper.h.me chromium-113.0.5672.37/gin/time_clamper.h
---- chromium-113.0.5672.37/gin/time_clamper.h.me 2023-04-18 16:38:41.180437467 +0200
-+++ chromium-113.0.5672.37/gin/time_clamper.h 2023-04-18 16:39:43.857049432 +0200
-@@ -48,7 +48,7 @@ class GIN_EXPORT TimeClamper {
- const int64_t micros = now_micros % 1000;
- // abs() is necessary for devices with times before unix-epoch (most likely
- // configured incorrectly).
-- if (abs(micros) + kResolutionMicros < 1000) {
-+ if (std::abs(micros) + kResolutionMicros < 1000) {
- return now_micros / 1000;
- }
- return ClampTimeResolution(now_micros) / 1000;
-diff -up chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc.me chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc
---- chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc.me 2023-04-21 08:07:55.362714544 +0200
-+++ chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc 2023-04-21 08:14:35.424158693 +0200
-@@ -10,6 +10,7 @@
- #include <queue>
- #include <utility>
- #include <vector>
-+#include <cstring>
-
- #include "base/check.h"
- #include "base/files/file_path.h"
-diff -up chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc.me chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc
---- chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc.me 2023-06-18 12:33:52.387412788 +0200
-+++ chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc 2023-06-18 12:35:28.229148935 +0200
-@@ -3,6 +3,7 @@
- // found in the LICENSE file.
-
- #include "skia/ext/skcolorspace_trfn.h"
-+#include <cmath>
-
- namespace skia {
-
-diff -up chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h
---- chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint 2021-11-19 17:05:31.379750350 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h 2021-11-19 17:07:35.191520127 -0500
-@@ -11,6 +11,7 @@
- #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
- #define COMMON_VIDEO_H264_SPS_PARSER_H_
-
-+#include <cstdint>
- #include "absl/types/optional.h"
- #include "rtc_base/bitstream_reader.h"
-
-diff -up chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h
---- chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint 2021-11-12 05:28:10.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h 2021-11-19 17:05:31.379750350 -0500
-@@ -11,6 +11,7 @@
- #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
- #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
-
-+#include <cstdint>
- #include <limits>
-
- #include "absl/types/optional.h"
-diff -up chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h.missing-cstdint chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h
---- chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h.missing-cstdint 2021-11-12 05:25:24.000000000 -0500
-+++ chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h 2021-11-19 17:05:31.379750350 -0500
-@@ -9,6 +9,8 @@
-
- #include "ui/gfx/buffer_types.h"
-
-+#include <cstdint>
-+
- namespace ui {
-
- int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format);
-diff -up chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc
---- chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring 2021-11-12 05:28:09.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc 2021-11-19 17:10:02.927438695 -0500
-@@ -8,6 +8,8 @@
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-+#include <cstring>
-+
- #include "audio/utility/channel_mixer.h"
-
- #include "audio/utility/channel_mixing_matrix.h"
-diff -up chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
---- chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring 2021-11-12 05:28:10.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2021-11-19 17:10:02.928438701 -0500
-@@ -10,6 +10,7 @@
-
- #include "modules/video_coding/utility/ivf_file_reader.h"
-
-+#include <cstring>
- #include <string>
- #include <vector>
-
-diff -up chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h.me chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h
---- chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h.me 2023-09-10 17:53:04.826298351 +0200
-+++ chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h 2023-09-10 17:53:22.201756894 +0200
-@@ -5,6 +5,7 @@
- #ifndef IPCZ_SRC_IPCZ_ROUTER_LINK_H_
- #define IPCZ_SRC_IPCZ_ROUTER_LINK_H_
-
-+#include <memory>
- #include <cstddef>
- #include <functional>
- #include <string>
-diff -up chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc.me chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc
---- chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc.me 2023-09-10 17:36:27.199841051 +0200
-+++ chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc 2023-09-10 17:44:51.870554233 +0200
-@@ -14,6 +14,7 @@
- * limitations under the License.
- */
-
-+#include <cmath>
- #include "cpp/palettes/tones.h"
-
- #include "cpp/cam/cam.h"
-diff -up chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h.me chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h
---- chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h.me 2023-10-01 13:55:01.913193186 +0200
-+++ chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h 2023-10-01 14:05:38.488038429 +0200
-@@ -5,6 +5,9 @@
- #ifndef SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
- #define SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
-
-+#include <cstddef>
-+#include <cstdint>
-+
- #include <type_traits>
-
- namespace device {
diff --git a/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch b/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
new file mode 100644
index 0000000000000..cf807ddb31ec7
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
@@ -0,0 +1,13 @@
+diff -up chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.me chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h
+--- chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.me 2024-01-16 14:20:52.401890657 +0100
++++ chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h 2024-01-16 15:08:04.070156474 +0100
+@@ -162,7 +162,8 @@ static_assert(sizeof(void*) != 8, "");
+
+ #if defined(ARCH_CPU_ARM64) && defined(__clang__) && \
+ !defined(ADDRESS_SANITIZER) && \
+- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID))
++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)) && \
++ __GLIBC_PREREQ(2, 29)
+ #define PA_CONFIG_HAS_MEMORY_TAGGING() 1
+ #else
+ #define PA_CONFIG_HAS_MEMORY_TAGGING() 0
diff --git a/srcpkgs/chromium/patches/chromium-121-constexpr.patch b/srcpkgs/chromium/patches/chromium-121-constexpr.patch
new file mode 100644
index 0000000000000..a0b7166a5c8f8
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-constexpr.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h.me chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h
+--- chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h.me 2024-01-18 17:00:24.791582422 +0100
++++ chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h 2024-01-18 17:22:21.521682845 +0100
+@@ -27,7 +27,7 @@ struct QueryParams {
+ QueryParams(const QueryParams& other);
+ QueryParams& operator=(const QueryParams& other);
+
+- friend constexpr bool operator==(const QueryParams&,
++ friend bool operator==(const QueryParams&,
+ const QueryParams&) = default;
+
+ // Individual resource contexts to measure.
diff --git a/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch b/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
new file mode 100644
index 0000000000000..bc86eb2355874
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
@@ -0,0 +1,15 @@
+--- chromium-121.0.6167.57/third_party/libc++/src/include/__config.orig 2024-01-16 18:38:00.995930774 +0100
++++ chromium-121.0.6167.57/third_party/libc++/src/include/__config 2024-01-16 18:43:47.056517289 +0100
+@@ -32,11 +32,7 @@
+
+ // Warn if a compiler version is used that is not supported anymore
+ // LLVM RELEASE Update the minimum compiler versions
+-# if defined(_LIBCPP_CLANG_VER)
+-# if _LIBCPP_CLANG_VER < 1600
+-# warning "Libc++ only supports Clang 16 and later"
+-# endif
+-# elif defined(_LIBCPP_APPLE_CLANG_VER)
++# if defined(_LIBCPP_APPLE_CLANG_VER)
+ # if _LIBCPP_APPLE_CLANG_VER < 1500
+ # warning "Libc++ only supports AppleClang 15 and later"
+ # endif
diff --git a/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch b/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
new file mode 100644
index 0000000000000..0a2ac1de3561d
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc.me chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc
+--- chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc.me 2024-01-23 15:13:11.469104694 +0100
++++ chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc 2024-01-23 15:11:40.117842015 +0100
+@@ -46,7 +46,7 @@ size_t GetResultSizeBytes(const HeaderDi
+
+ } // namespace
+
+-HeaderDirectFromSellerSignals::Result::Result() = default;
++HeaderDirectFromSellerSignals::Result::Result() {}
+
+ HeaderDirectFromSellerSignals::Result::Result(
+ absl::optional<std::string> seller_signals,
--git a/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch b/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
new file mode 100644
index 0000000000000..377de0d1140cb
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
@@ -0,0 +1,459 @@
+diff -up chromium-119.0.6045.105/base/check_op.h.missing-header-files chromium-119.0.6045.105/base/check_op.h
+--- chromium-119.0.6045.105/base/check_op.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/check_op.h 2023-11-06 14:34:01.808868982 +0100
+@@ -5,6 +5,7 @@
+ #ifndef BASE_CHECK_OP_H_
+ #define BASE_CHECK_OP_H_
+
++#include <cstdint>
+ #include <cstddef>
+ #include <string>
+ #include <string_view>
+diff -up chromium-119.0.6045.105/base/containers/flat_map.h.missing-header-files chromium-119.0.6045.105/base/containers/flat_map.h
+--- chromium-119.0.6045.105/base/containers/flat_map.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/containers/flat_map.h 2023-11-06 14:34:01.813869089 +0100
+@@ -5,6 +5,7 @@
+ #ifndef BASE_CONTAINERS_FLAT_MAP_H_
+ #define BASE_CONTAINERS_FLAT_MAP_H_
+
++#include <cstdint>
+ #include <functional>
+ #include <tuple>
+ #include <type_traits>
+diff -up chromium-119.0.6045.105/base/debug/profiler.h.missing-header-files chromium-119.0.6045.105/base/debug/profiler.h
+--- chromium-119.0.6045.105/base/debug/profiler.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/debug/profiler.h 2023-11-06 14:34:01.809869004 +0100
+@@ -8,6 +8,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/base_export.h"
+diff -up chromium-119.0.6045.105/base/memory/ref_counted.h.missing-header-files chromium-119.0.6045.105/base/memory/ref_counted.h
+--- chromium-119.0.6045.105/base/memory/ref_counted.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/memory/ref_counted.h 2023-11-06 14:34:01.808868982 +0100
+@@ -6,6 +6,7 @@
+ #define BASE_MEMORY_REF_COUNTED_H_
+
+ #include <stddef.h>
++#include <limits>
+
+ #include <limits>
+ #include <utility>
+diff -up chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h.missing-header-files chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h
+--- chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h.missing-header-files 2023-11-01 19:10:13.000000000 +0100
++++ chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <map>
+
+ #include "base/containers/flat_set.h"
+diff -up chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h.missing-header-files chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h
+--- chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h.missing-header-files 2023-11-01 19:10:16.000000000 +0100
++++ chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h 2023-11-06 14:34:01.817869174 +0100
+@@ -8,6 +8,7 @@
+ #include <memory>
+ #include <string>
+ #include <vector>
++#include <variant>
+
+ #include "base/containers/span.h"
+ #include "base/functional/callback_forward.h"
+diff -up chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc.missing-header-files chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc
+--- chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc.missing-header-files 2023-11-01 19:10:16.000000000 +0100
++++ chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc 2023-11-06 14:34:01.818869196 +0100
+@@ -11,6 +11,7 @@
+ #include <queue>
+ #include <utility>
+ #include <vector>
++#include <cstring>
+
+ #include "base/check.h"
+ #include "base/files/file_path.h"
+diff -up chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h.missing-header-files chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h
+--- chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h.missing-header-files 2023-11-01 19:10:19.000000000 +0100
++++ chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ class GURL;
+diff -up chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h.missing-header-files chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h
+--- chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h.missing-header-files 2023-11-01 19:10:20.000000000 +0100
++++ chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h 2023-11-06 14:34:01.813869089 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "build/build_config.h"
+diff -up chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h.missing-header-files chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h
+--- chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ namespace feature_engagement {
+diff -up chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h.missing-header-files chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h
+--- chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
+ #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
+
++#include <cstdint>
+ #include <string>
+
+ #include "components/feature_engagement/internal/event_storage_validator.h"
+diff -up chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h.missing-header-files chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h
+--- chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+ #include <utility>
+ #include <vector>
+diff -up chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h.missing-header-files chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h
+--- chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+
+diff -up chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h.missing-header-files chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h
+--- chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h 2023-11-06 14:34:01.815869132 +0100
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
+ #define COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
+
++#include <cstdint>
+ #include <stddef.h>
+ #include <stdint.h>
+
+diff -up chromium-119.0.6045.105/gin/time_clamper.h.missing-header-files chromium-119.0.6045.105/gin/time_clamper.h
+--- chromium-119.0.6045.105/gin/time_clamper.h.missing-header-files 2023-11-01 19:10:28.000000000 +0100
++++ chromium-119.0.6045.105/gin/time_clamper.h 2023-11-06 14:34:01.818869196 +0100
+@@ -48,7 +48,7 @@ class GIN_EXPORT TimeClamper {
+ const int64_t micros = now_micros % 1000;
+ // abs() is necessary for devices with times before unix-epoch (most likely
+ // configured incorrectly).
+- if (abs(micros) + kResolutionMicros < 1000) {
++ if (std::abs(micros) + kResolutionMicros < 1000) {
+ return now_micros / 1000;
+ }
+ return ClampTimeResolution(now_micros) / 1000;
+diff -up chromium-119.0.6045.105/gpu/config/gpu_feature_info.h.missing-header-files chromium-119.0.6045.105/gpu/config/gpu_feature_info.h
+--- chromium-119.0.6045.105/gpu/config/gpu_feature_info.h.missing-header-files 2023-11-01 19:10:28.000000000 +0100
++++ chromium-119.0.6045.105/gpu/config/gpu_feature_info.h 2023-11-06 14:34:01.809869004 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff -up chromium-119.0.6045.105/net/base/net_export.h.missing-header-files chromium-119.0.6045.105/net/base/net_export.h
+--- chromium-119.0.6045.105/net/base/net_export.h.missing-header-files 2023-11-01 19:10:32.000000000 +0100
++++ chromium-119.0.6045.105/net/base/net_export.h 2023-11-06 14:34:01.809869004 +0100
+@@ -5,6 +5,8 @@
+ #ifndef NET_BASE_NET_EXPORT_H_
+ #define NET_BASE_NET_EXPORT_H_
+
++#include <cstdint>
++
+ // Defines NET_EXPORT so that functionality implemented by the net module can
+ // be exported to consumers, and NET_EXPORT_PRIVATE that allows unit tests to
+ // access features not intended to be used directly by real consumers.
+diff -up chromium-119.0.6045.105/pdf/document_attachment_info.h.missing-header-files chromium-119.0.6045.105/pdf/document_attachment_info.h
+--- chromium-119.0.6045.105/pdf/document_attachment_info.h.missing-header-files 2023-11-01 19:10:34.000000000 +0100
++++ chromium-119.0.6045.105/pdf/document_attachment_info.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+
+diff -up chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h.missing-header-files chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h
+--- chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h.missing-header-files 2023-11-01 19:10:34.000000000 +0100
++++ chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h 2023-11-06 14:34:01.809869004 +0100
+@@ -5,6 +5,7 @@
+ #ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+ #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+
++#include <cstdint>
+ #include <bitset>
+ #include <cstdint>
+ #include <string>
+diff -up chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h.missing-header-files chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h
+--- chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h.missing-header-files 2023-11-01 19:10:35.000000000 +0100
++++ chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h 2023-11-06 14:34:01.820869238 +0100
+@@ -8,6 +8,9 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <cstddef>
++#include <cstdint>
++
+ #include <type_traits>
+
+ namespace device {
+diff -up chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc.missing-header-files chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc
+--- chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc.missing-header-files 2023-11-01 19:10:35.000000000 +0100
++++ chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc 2023-11-06 14:34:01.818869196 +0100
+@@ -3,6 +3,7 @@
+ // found in the LICENSE file.
+
+ #include "skia/ext/skcolorspace_trfn.h"
++#include <cmath>
+
+ #include <cmath>
+
+diff -up chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h.missing-header-files chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h
+--- chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h.missing-header-files 2023-11-01 19:10:36.000000000 +0100
++++ chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h 2023-11-06 14:34:01.809869004 +0100
+@@ -27,6 +27,7 @@
+ #ifndef ABSL_STRINGS_STRING_VIEW_H_
+ #define ABSL_STRINGS_STRING_VIEW_H_
+
++#include <cstdint>
+ #include <algorithm>
+ #include <cassert>
+ #include <cstddef>
+diff -up chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h.missing-header-files chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h
+--- chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h.missing-header-files 2023-11-01 19:11:59.000000000 +0100
++++ chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h 2023-11-06 14:34:01.810869025 +0100
+@@ -10,6 +10,7 @@
+ #ifndef GLSLANG_SHADERVARS_H_
+ #define GLSLANG_SHADERVARS_H_
+
++#include <cstdint>
+ #include <algorithm>
+ #include <array>
+ #include <cstdint>
+diff -up chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.missing-header-files chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h
+--- chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.missing-header-files 2023-11-01 19:10:37.000000000 +0100
++++ chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h 2023-11-06 14:34:01.810869025 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <array>
+ #include <cstdint>
+ #include <functional>
+diff -up chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.missing-header-files chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h
+--- chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.missing-header-files 2023-11-01 19:13:50.000000000 +0100
++++ chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h 2023-11-06 14:34:01.810869025 +0100
+@@ -15,6 +15,7 @@
+ #ifndef SRC_TINT_LANG_SPIRV_READER_AST_PARSER_NAMER_H_
+ #define SRC_TINT_LANG_SPIRV_READER_AST_PARSER_NAMER_H_
+
++#include <cstdint>
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h.missing-header-files chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h
+--- chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h.missing-header-files 2023-11-01 19:11:20.000000000 +0100
++++ chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h 2023-11-06 14:34:01.819869217 +0100
+@@ -5,6 +5,7 @@
+ #ifndef IPCZ_SRC_IPCZ_ROUTER_LINK_H_
+ #define IPCZ_SRC_IPCZ_ROUTER_LINK_H_
+
++#include <memory>
+ #include <cstddef>
+ #include <functional>
+ #include <memory>
+diff -up chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc.missing-header-files chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc
+--- chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc.missing-header-files 2023-11-01 19:11:53.000000000 +0100
++++ chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -14,6 +14,7 @@
+ * limitations under the License.
+ */
+
++#include <cmath>
+ #include "cpp/palettes/tones.h"
+
+ #include "cpp/cam/cam.h"
+diff -up chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.missing-header-files chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h
+--- chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.missing-header-files 2023-11-01 19:11:59.000000000 +0100
++++ chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h 2023-11-06 14:34:01.810869025 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <functional>
+ #include <map>
+ #include <set>
+diff -up chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h.missing-header-files chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h
+--- chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h.missing-header-files 2023-11-01 19:14:48.000000000 +0100
++++ chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,8 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
++
+ namespace pdfium {
+ namespace annotation_flags {
+
+diff -up chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h.missing-header-files chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h
+--- chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h.missing-header-files 2023-11-01 19:12:02.000000000 +0100
++++ chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h 2023-11-06 14:34:01.813869089 +0100
+@@ -17,6 +17,7 @@ limitations under the License.
+ #define RUY_RUY_PROFILER_INSTRUMENTATION_H_
+
+ #ifdef RUY_PROFILER
++#include <string>
+ #include <cstdio>
+ #include <mutex>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp.missing-header-files chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp
+--- chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp.missing-header-files 2023-11-01 19:12:15.000000000 +0100
++++ chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp 2023-11-06 14:34:01.810869025 +0100
+@@ -17,6 +17,7 @@
+
+ #include "System/Debug.hpp"
+
++#include <cstdint>
+ #include <cstddef>
+ #include <cstdint>
+ #include <functional>
+diff -up chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.missing-header-files chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc
+--- chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.missing-header-files 2023-11-01 19:12:42.000000000 +0100
++++ chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc 2023-11-06 14:34:01.814869110 +0100
+@@ -45,6 +45,7 @@
+ #include "llvm/Support/SaveAndRestore.h"
+ #include "llvm/Support/raw_ostream.h"
+ #include <algorithm>
++#include <cstdint>
+ #include <string>
+ #include <sysexits.h>
+ #ifdef HAVE_BACKTRACE
+diff -up chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.missing-header-files chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h
+--- chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.missing-header-files 2023-11-01 19:13:20.000000000 +0100
++++ chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h 2023-11-06 14:34:01.813869089 +0100
+@@ -31,6 +31,7 @@ limitations under the License.
+ #ifndef TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
+ #define TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
+
++#include <cstdint>
+ #include <complex>
+ #include <deque>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.missing-header-files chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
+--- chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.missing-header-files 2023-11-01 19:12:45.000000000 +0100
++++ chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h 2023-11-06 14:34:01.817869174 +0100
+@@ -2884,6 +2884,7 @@ static void vma_aligned_free(void* VMA_N
+
+ // Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.
+ #if VMA_STATS_STRING_ENABLED
++#include <stdio.h>
+ static inline void VmaUint32ToStr(char* VMA_NOT_NULL outStr, size_t strLen, uint32_t num)
+ {
+ snprintf(outStr, strLen, "%u", static_cast<unsigned int>(num));
+diff -up chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc.missing-header-files chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc
+--- chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc.missing-header-files 2023-11-01 19:14:05.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -8,6 +8,8 @@
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
++#include <cstring>
++
+ #include "audio/utility/channel_mixer.h"
+
+ #include "audio/utility/channel_mixing_matrix.h"
+diff -up chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h.missing-header-files chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h
+--- chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h.missing-header-files 2023-11-01 19:14:06.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h 2023-11-06 14:34:01.819869217 +0100
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
+ #define COMMON_VIDEO_H264_SPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+ #include "rtc_base/bitstream_reader.h"
+
+diff -up chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h.missing-header-files chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h
+--- chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h.missing-header-files 2023-11-01 19:14:11.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h 2023-11-06 14:34:01.819869217 +0100
+@@ -11,6 +11,7 @@
+ #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+ #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+
++#include <cstdint>
+ #include <limits>
+
+ #include "absl/types/optional.h"
+diff -up chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-header-files chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
+--- chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-header-files 2023-11-01 19:14:12.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -10,6 +10,7 @@
+
+ #include "modules/video_coding/utility/ivf_file_reader.h"
+
++#include <cstring>
+ #include <string>
+ #include <vector>
+
+diff -up chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h.missing-header-files chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h
+--- chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,8 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
++
+ #include "base/component_export.h"
+ #include "ui/gfx/geometry/matrix3_f.h"
+
+diff -up chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h.missing-header-files chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h
+--- chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h 2023-11-06 14:34:01.812869068 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <array>
+ #include <cstddef>
+ #include <cstdint>
+diff -up chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h.missing-header-files chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h
+--- chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h 2023-11-06 14:34:01.819869217 +0100
+@@ -9,6 +9,8 @@
+
+ #include "ui/gfx/buffer_types.h"
+
++#include <cstdint>
++
+ namespace ui {
+
+ int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format);
diff --git a/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch b/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
new file mode 100644
index 0000000000000..61239e7f02276
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn.mnemonic-error chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn
+--- chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn.mnemonic-error 2023-12-19 18:14:43.027723832 +0100
++++ chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn 2023-12-19 18:39:47.492384620 +0100
+@@ -1731,8 +1731,6 @@ action_foreach("element_locator_test_pro
+ python_path_root = "${root_out_dir}/pyproto"
+ python_path_proto = "${python_path_root}/third_party/blink/renderer/core/lcp_critical_path_predictor"
+
+- mnemonic = "ELOC_PROTO"
+-
+ source_dir = "lcp_critical_path_predictor/test_proto"
+ sources = rebase_path([ "lcp_image_id.asciipb" ], "", source_dir)
+ sources += rebase_path([ "lcp_image_id_b.asciipb" ], "", source_dir)
diff --git a/srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch b/srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
similarity index 75%
rename from srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch
rename to srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
index b1d987adeff8d..332a91ad06b3d 100644
--- a/srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch
+++ b/srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
@@ -114,9 +114,9 @@ diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_per
+ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal};
}
- buttons.emplace_back(l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
-- ButtonType::kAllow, ui::ButtonStyle::kTonal);
+- ButtonType::kAllow, ui::ButtonStyle::kTonal, kAllowId);
+ buttons.emplace_back() = {l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
-+ ButtonType::kAllow, ui::ButtonStyle::kTonal};
++ ButtonType::kAllow, ui::ButtonStyle::kTonal, kAllowId};
return buttons;
}
@@ -145,55 +145,6 @@ diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_per
return buttons;
}
-diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.no_matching_constructor chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc
---- chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.no_matching_constructor 2023-11-29 22:39:53.000000000 +0100
-+++ chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc 2023-12-03 17:31:25.756420342 +0100
-@@ -63,18 +63,18 @@ EmbeddedPermissionPromptPreviouslyDenied
- std::vector<EmbeddedPermissionPromptPreviouslyDeniedView::ButtonConfiguration>
- EmbeddedPermissionPromptPreviouslyDeniedView::GetButtonsConfiguration() const {
- std::vector<ButtonConfiguration> buttons;
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_NOT_ALLOWING),
-- ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal};
-
- if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
-- ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal);
-+ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal};
- } else {
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
-- ButtonType::kAllow, ui::ButtonStyle::kTonal);
-+ ButtonType::kAllow, ui::ButtonStyle::kTonal};
- }
- return buttons;
- }
-diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.no_matching_constructor chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc
---- chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.no_matching_constructor 2023-11-29 22:39:53.000000000 +0100
-+++ chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc 2023-12-03 17:31:25.750420227 +0100
-@@ -57,13 +57,13 @@ EmbeddedPermissionPromptPreviouslyGrante
- std::vector<EmbeddedPermissionPromptPreviouslyGrantedView::ButtonConfiguration>
- EmbeddedPermissionPromptPreviouslyGrantedView::GetButtonsConfiguration() const {
- std::vector<ButtonConfiguration> buttons;
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_ALLOWING),
-- ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal};
-
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_STOP_ALLOWING),
-- ButtonType::kStopAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kStopAllowing, ui::ButtonStyle::kTonal};
- return buttons;
- }
-
diff -up chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc.no_matching_constructor chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc
--- chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc.no_matching_constructor 2023-11-29 22:39:54.000000000 +0100
+++ chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc 2023-12-03 17:31:25.750420227 +0100
@@ -246,18 +197,6 @@ diff -up chromium-120.0.6099.56/components/autofill/core/browser/webdata/autofil
if (type == ADDRESS_HOME_COUNTRY) {
country_code = base::UTF16ToUTF8(s.ColumnString16(1));
-diff -up chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc.no_matching_constructor chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc
---- chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc.no_matching_constructor 2023-11-29 22:39:58.000000000 +0100
-+++ chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc 2023-12-03 17:31:25.751420246 +0100
-@@ -630,7 +630,7 @@ void PasswordManager::OnUserModifiedNonP
- // |driver| might be empty on iOS or in tests.
- int driver_id = driver ? driver->GetId() : 0;
- possible_usernames_.Put(
-- PossibleUsernameFieldIdentifier(driver_id, renderer_id),
-+ PossibleUsernameFieldIdentifier{driver_id, renderer_id},
- PossibleUsernameData(GetSignonRealm(driver->GetLastCommittedURL()),
- renderer_id, value, base::Time::Now(), driver_id,
- autocomplete_attribute_has_username, is_likely_otp));
diff -up chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.no_matching_constructor chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc
--- chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.no_matching_constructor 2023-11-29 22:40:01.000000000 +0100
+++ chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc 2023-12-03 17:31:25.751420246 +0100
@@ -300,45 +239,6 @@ diff -up chromium-120.0.6099.56/content/browser/interest_group/interest_group_st
}
if (!interest_group_kanon_query.Succeeded()) {
return absl::nullopt;
-diff -up chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc.no_matching_constructor chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc
---- chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc.no_matching_constructor 2023-11-29 22:40:01.000000000 +0100
-+++ chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc 2023-12-03 20:49:28.059042672 +0100
-@@ -8685,7 +8685,7 @@ void RenderFrameHostImpl::SendFencedFram
- for (const blink::FencedFrame::ReportingDestination& destination :
- destinations) {
- SendFencedFrameReportingBeaconInternal(
-- DestinationEnumEvent(event_type, event_data), destination,
-+ DestinationEnumEvent{event_type, event_data}, destination,
- /*from_renderer=*/true, attribution_reporting_runtime_features);
- }
- }
-@@ -8720,7 +8720,7 @@ void RenderFrameHostImpl::SendFencedFram
- }
-
- SendFencedFrameReportingBeaconInternal(
-- DestinationURLEvent(destination_url),
-+ DestinationURLEvent{destination_url},
- blink::FencedFrame::ReportingDestination::kBuyer,
- /*from_renderer=*/true, attribution_reporting_runtime_features);
- }
-@@ -8820,7 +8820,7 @@ void RenderFrameHostImpl::MaybeSendFence
- data = info->data;
- }
- initiator_rfh->SendFencedFrameReportingBeaconInternal(
-- AutomaticBeaconEvent(event_type, data), destination,
-+ AutomaticBeaconEvent{event_type, data}, destination,
- /*from_renderer=*/false, attribution_reporting_features,
- navigation_request.GetNavigationId());
- }
-@@ -8832,7 +8832,7 @@ void RenderFrameHostImpl::MaybeSendFence
- for (blink::FencedFrame::ReportingDestination destination :
- info->destinations) {
- initiator_rfh->SendFencedFrameReportingBeaconInternal(
-- AutomaticBeaconEvent(event_type, info->data), destination,
-+ AutomaticBeaconEvent{event_type, info->data}, destination,
- /*from_renderer=*/false, info->attribution_reporting_runtime_features,
- navigation_request.GetNavigationId());
- }
diff -up chromium-120.0.6099.56/net/dns/host_resolver_cache.cc.no_matching_constructor chromium-120.0.6099.56/net/dns/host_resolver_cache.cc
--- chromium-120.0.6099.56/net/dns/host_resolver_cache.cc.no_matching_constructor 2023-11-29 22:40:07.000000000 +0100
+++ chromium-120.0.6099.56/net/dns/host_resolver_cache.cc 2023-12-03 17:31:25.754420303 +0100
@@ -740,3 +640,306 @@ diff -up chromium-120.0.6099.56/ui/gtk/gtk_ui.cc.no_matching_constructor chromiu
}
return config;
}
+diff -up chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.than chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc
+--- chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.than 2023-12-19 17:13:15.116949814 +0100
++++ chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc 2023-12-19 17:27:18.807102716 +0100
+@@ -66,17 +66,17 @@ EmbeddedPermissionPromptPreviouslyDenied
+ std::vector<EmbeddedPermissionPromptPreviouslyDeniedView::ButtonConfiguration>
+ EmbeddedPermissionPromptPreviouslyDeniedView::GetButtonsConfiguration() const {
+ std::vector<ButtonConfiguration> buttons;
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_NOT_ALLOWING),
+- ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal);
++ ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal};
+
+ if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
+- ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal, kAllowThisTimeId);
++ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal, kAllowThisTimeId};
+ } else {
+- buttons.emplace_back(l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
+- ButtonType::kAllow, ui::ButtonStyle::kTonal);
++ buttons.emplace_back() = {l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
++ ButtonType::kAllow, ui::ButtonStyle::kTonal};
+ }
+ return buttons;
+ }
+diff -up chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.than chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc
+--- chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.than 2023-12-19 17:39:17.818834020 +0100
++++ chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc 2023-12-19 17:44:15.346337876 +0100
+@@ -61,13 +61,13 @@ EmbeddedPermissionPromptPreviouslyGrante
+ std::vector<EmbeddedPermissionPromptPreviouslyGrantedView::ButtonConfiguration>
+ EmbeddedPermissionPromptPreviouslyGrantedView::GetButtonsConfiguration() const {
+ std::vector<ButtonConfiguration> buttons;
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_ALLOWING),
+- ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal);
++ ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal};
+
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_STOP_ALLOWING),
+- ButtonType::kStopAllowing, ui::ButtonStyle::kTonal, kStopAllowingId);
++ ButtonType::kStopAllowing, ui::ButtonStyle::kTonal, kStopAllowingId};
+ return buttons;
+ }
+
+diff -up chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc.than chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc
+--- chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc.than 2023-12-19 17:39:17.819834039 +0100
++++ chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc 2023-12-19 17:48:33.144389081 +0100
+@@ -666,7 +666,7 @@ void PasswordManager::OnUserModifiedNonP
+ it->second.last_change = base::Time::Now();
+ } else {
+ possible_usernames_.Put(
+- PossibleUsernameFieldIdentifier(driver_id, renderer_id),
++ PossibleUsernameFieldIdentifier{driver_id, renderer_id},
+ PossibleUsernameData(GetSignonRealm(driver->GetLastCommittedURL()),
+ renderer_id, value, base::Time::Now(), driver_id,
+ autocomplete_attribute_has_username,
+diff -up chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc.than chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc
+--- chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc.than 2023-12-19 17:39:17.825834156 +0100
++++ chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc 2023-12-19 17:53:43.153283847 +0100
+@@ -8561,7 +8561,7 @@ void RenderFrameHostImpl::SendFencedFram
+ for (const blink::FencedFrame::ReportingDestination& destination :
+ destinations) {
+ SendFencedFrameReportingBeaconInternal(
+- DestinationEnumEvent(event_type, event_data), destination,
++ DestinationEnumEvent{event_type, event_data}, destination,
+ attribution_reporting_runtime_features);
+ }
+ }
+@@ -8593,7 +8593,7 @@ void RenderFrameHostImpl::SendFencedFram
+ }
+
+ SendFencedFrameReportingBeaconInternal(
+- DestinationURLEvent(destination_url),
++ DestinationURLEvent{destination_url},
+ blink::FencedFrame::ReportingDestination::kBuyer,
+ attribution_reporting_runtime_features);
+ }
+@@ -8730,7 +8730,7 @@ void RenderFrameHostImpl::MaybeSendFence
+ data = info->data;
+ }
+ initiator_rfh->SendFencedFrameReportingBeaconInternal(
+- AutomaticBeaconEvent(event_type, data), destination,
++ AutomaticBeaconEvent{event_type, data}, destination,
+ attribution_reporting_features, navigation_request.GetNavigationId());
+ }
+ } else {
+@@ -8741,7 +8741,7 @@ void RenderFrameHostImpl::MaybeSendFence
+ for (blink::FencedFrame::ReportingDestination destination :
+ info->destinations) {
+ initiator_rfh->SendFencedFrameReportingBeaconInternal(
+- AutomaticBeaconEvent(event_type, info->data), destination,
++ AutomaticBeaconEvent{event_type, info->data}, destination,
+ info->attribution_reporting_runtime_features,
+ navigation_request.GetNavigationId());
+ }
+diff -up chromium-121.0.6167.57/base/nix/mime_util_xdg.cc.me chromium-121.0.6167.57/base/nix/mime_util_xdg.cc
+--- chromium-121.0.6167.57/base/nix/mime_util_xdg.cc.me 2024-01-21 16:54:15.261844448 +0100
++++ chromium-121.0.6167.57/base/nix/mime_util_xdg.cc 2024-01-21 16:55:48.705577424 +0100
+@@ -56,7 +56,7 @@ void LoadAllMimeCacheFiles(MimeTypeMap&
+ for (const auto& path : GetXDGDataSearchLocations(env.get())) {
+ FilePath mime_cache = path.Append("mime/mime.cache");
+ if (GetFileInfo(mime_cache, &info) && ParseMimeTypes(mime_cache, map)) {
+- files.emplace_back(mime_cache, info.last_modified);
++ files.emplace_back() = {mime_cache, info.last_modified};
+ }
+ }
+ }
+diff -up chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc.me chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc
+--- chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc.me 2024-01-21 18:11:31.397859608 +0100
++++ chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc 2024-01-21 18:20:07.715415037 +0100
+@@ -239,7 +239,7 @@ void WorkerWatcher::OnWorkerCreated(
+ DCHECK(insertion_result.second);
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&,
+ this](const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ AddFrameClientConnection(insertion_result.first->second.get(),
+@@ -248,7 +248,7 @@ void WorkerWatcher::OnWorkerCreated(
+ [&, this](blink::DedicatedWorkerToken dedicated_worker_token) {
+ ConnectDedicatedWorkerClient(insertion_result.first->second.get(),
+ dedicated_worker_token);
+- }),
++ }},
+ creator);
+ }
+
+@@ -265,7 +265,7 @@ void WorkerWatcher::OnBeforeWorkerDestro
+ // First disconnect the creator's node from this worker node.
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&,
+ this](const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ RemoveFrameClientConnection(worker_node.get(),
+@@ -274,7 +274,7 @@ void WorkerWatcher::OnBeforeWorkerDestro
+ [&, this](blink::DedicatedWorkerToken dedicated_worker_token) {
+ DisconnectDedicatedWorkerClient(worker_node.get(),
+ dedicated_worker_token);
+- }),
++ }},
+ creator);
+
+ // Disconnect all child workers before destroying the node.
+@@ -446,7 +446,7 @@ void WorkerWatcher::OnControlleeAdded(
+ const std::string& client_uuid,
+ const content::ServiceWorkerClientInfo& client_info) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ // For window clients, it is necessary to wait until the navigation
+ // has committed to a RenderFrameHost.
+@@ -484,7 +484,7 @@ void WorkerWatcher::OnControlleeAdded(
+ ConnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+ }
+- }),
++ }},
+ client_info);
+ }
+
+@@ -524,7 +524,7 @@ void WorkerWatcher::OnControlleeRemoved(
+ return;
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ RemoveFrameClientConnection(worker_node, render_frame_host_id);
+ },
+@@ -534,7 +534,7 @@ void WorkerWatcher::OnControlleeRemoved(
+ },
+ [&, this](blink::SharedWorkerToken shared_worker_token) {
+ DisconnectSharedWorkerClient(worker_node, shared_worker_token);
+- }),
++ }},
+ client);
+ }
+
+@@ -810,7 +810,7 @@ void WorkerWatcher::ConnectAllServiceWor
+
+ for (const auto& kv : it->second) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ AddFrameClientConnection(service_worker_node,
+ render_frame_host_id);
+@@ -822,7 +822,7 @@ void WorkerWatcher::ConnectAllServiceWor
+ [&, this](blink::SharedWorkerToken shared_worker_token) {
+ ConnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+- }),
++ }},
+ kv.second);
+ }
+ }
+@@ -837,7 +837,7 @@ void WorkerWatcher::DisconnectAllService
+
+ for (const auto& kv : it->second) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](
+ const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ RemoveFrameClientConnection(service_worker_node,
+@@ -851,7 +851,7 @@ void WorkerWatcher::DisconnectAllService
+ [&, this](const blink::SharedWorkerToken& shared_worker_token) {
+ DisconnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+- }),
++ }},
+ kv.second);
+ }
+ }
+diff -up chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc.me chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc
+--- chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc.me 2024-01-21 18:40:52.284389286 +0100
++++ chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc 2024-01-21 18:41:17.276840222 +0100
+@@ -764,7 +764,7 @@ FirstPartySetParser::ParseSetsFromEnterp
+ context.GetPolicySetsFromList(
+ policy.FindList(kFirstPartySetPolicyAdditionsField),
+ PolicySetType::kAddition));
+- return ParsedPolicySetLists(std::move(replacements), std::move(additions));
++ return ParsedPolicySetLists{std::move(replacements), std::move(additions)};
+ }();
+
+ context.PostProcessSetLists(set_lists);
+diff -up chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h.me chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h
+--- chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h.me 2024-01-21 19:30:00.536387844 +0100
++++ chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h 2024-01-21 20:29:50.236287514 +0100
+@@ -133,6 +133,7 @@ class CONTENT_EXPORT HeaderDirectFromSel
+
+ // The Ad-Auction-Signals response served by `origin`.
+ std::string response_json;
++ UnprocessedResponse(auto u, auto s) : origin(u), response_json(s) { }
+ };
+
+ // Information from ParseAndFind() calls used by ParseAndFindCompleted.
+diff -up chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc.me chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc
+--- chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc.me 2024-01-21 21:58:48.773366301 +0100
++++ chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc 2024-01-21 22:02:17.956086167 +0100
+@@ -360,10 +360,10 @@ ServiceWorkerMainResourceLoaderIntercept
+ }
+ auto* storage_partition = process->GetStoragePartition();
+
+- return absl::visit(base::Overloaded([&, this](auto token) {
++ return absl::visit(base::Overloaded{[&, this](auto token) {
+ return GetStorageKeyFromWorkerHost(storage_partition,
+ token, origin);
+- }),
++ }},
+ *worker_token_);
+ }
+
+diff -up chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc.me chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc
+--- chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc.me 2024-01-21 22:04:30.446454697 +0100
++++ chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc 2024-01-21 22:05:22.847391481 +0100
+@@ -870,7 +870,7 @@ ServiceWorkerContainerHost::GetClientTyp
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+ DCHECK(client_info_);
+ return absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [](GlobalRenderFrameHostId render_frame_host_id) {
+ return blink::mojom::ServiceWorkerClientType::kWindow;
+ },
+@@ -879,7 +879,7 @@ ServiceWorkerContainerHost::GetClientTyp
+ },
+ [](blink::SharedWorkerToken shared_worker_token) {
+ return blink::mojom::ServiceWorkerClientType::kSharedWorker;
+- }),
++ }},
+ *client_info_);
+ }
+
+diff -up chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc.me chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc
+--- chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc.me 2024-01-21 22:37:00.969416148 +0100
++++ chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc 2024-01-21 22:38:07.754528335 +0100
+@@ -251,7 +251,7 @@ void DedicatedWorkerHost::StartScriptLoa
+ RenderFrameHostImpl* creator_render_frame_host = nullptr;
+ DedicatedWorkerHost* creator_worker = nullptr;
+
+- absl::visit(base::Overloaded(
++ absl::visit(base::Overloaded{
+ [&](const GlobalRenderFrameHostId& render_frame_host_id) {
+ creator_render_frame_host =
+ RenderFrameHostImpl::FromID(render_frame_host_id);
+@@ -259,7 +259,7 @@ void DedicatedWorkerHost::StartScriptLoa
+ [&](blink::DedicatedWorkerToken dedicated_worker_token) {
+ creator_worker = service_->GetDedicatedWorkerHostFromToken(
+ dedicated_worker_token);
+- }),
++ }},
+ creator_);
+
+ if (!creator_render_frame_host && !creator_worker) {
diff --git a/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch b/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
new file mode 100644
index 0000000000000..3defc393c084f
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
@@ -0,0 +1,12 @@
+diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h.than chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h
+--- chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h.than 2023-12-04 10:20:45.350540897 +0100
++++ chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h 2023-12-04 10:23:17.335339670 +0100
+@@ -21,7 +21,7 @@ class FragmentDataIteratorBase {
+
+ public:
+ explicit FragmentDataIteratorBase(Head& head) : fragment_head_(head) {}
+- explicit FragmentDataIteratorBase(nullptr_t) {}
++ explicit FragmentDataIteratorBase(std::nullptr_t) {}
+
+ Data* GetFragmentData() const {
+ return !IsDone() ? &fragment_head_.at(idx_) : nullptr;
diff --git a/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch b/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
new file mode 100644
index 0000000000000..c2bf5b489f7a1
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
@@ -0,0 +1,77 @@
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py.me 2024-01-15 20:48:28.177397102 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py 2024-01-15 20:48:46.427768328 +0100
+@@ -18,7 +18,7 @@ class HTMLGenerationController(object):
+
+ def GetHTMLForInlineStylesheet(self, contents):
+ if self.current_module is None:
+- if re.search('url\(.+\)', contents):
++ if re.search(r'url\(.+\)', contents):
+ raise Exception(
+ 'Default HTMLGenerationController cannot handle inline style urls')
+ return contents
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py.me 2024-01-15 20:49:39.363845083 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py 2024-01-15 20:49:57.407212098 +0100
+@@ -4,4 +4,4 @@
+
+
+ def EscapeJSIfNeeded(js):
+- return js.replace('</script>', '<\/script>')
++ return js.replace(r'</script>', r'<\/script>')
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py.me 2024-01-15 20:50:11.819505254 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py 2024-01-15 20:50:38.611050213 +0100
+@@ -293,6 +293,6 @@ class HTMLModuleParser():
+ html = ''
+ else:
+ if html.find('< /script>') != -1:
+- raise Exception('Escape script tags with <\/script>')
++ raise Exception(r'Escape script tags with <\/script>')
+
+ return HTMLModuleParserResults(html)
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py.me 2024-01-15 20:48:59.917042709 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py 2024-01-15 20:49:24.402540761 +0100
+@@ -60,7 +60,7 @@ class ParsedStyleSheet(object):
+ return 'url(data:image/%s;base64,%s)' % (ext[1:], data.decode('utf-8'))
+
+ # I'm assuming we only have url()'s associated with images
+- return re.sub('url\((?P<quote>"|\'|)(?P<url>[^"\'()]*)(?P=quote)\)',
++ return re.sub(r'url\((?P<quote>"|\'|)(?P<url>[^"\'()]*)(?P=quote)\)',
+ InlineUrl, self.contents)
+
+ def AppendDirectlyDependentFilenamesTo(self, dependent_filenames):
+@@ -72,7 +72,7 @@ class ParsedStyleSheet(object):
+ raise Exception('@imports are not supported')
+
+ matches = re.findall(
+- 'url\((?:["|\']?)([^"\'()]*)(?:["|\']?)\)',
++ r'url\((?:["|\']?)([^"\'()]*)(?:["|\']?)\)',
+ self.contents)
+
+ def resolve_url(url):
+diff -up chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py.me chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py
+--- chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py.me 2024-01-15 20:50:56.810420400 +0100
++++ chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py 2024-01-15 20:52:33.506387261 +0100
+@@ -28,7 +28,7 @@ import platform
+ import sys
+
+ def glob_slash(dirname):
+- """Like regular glob but replaces \ with / in returned paths."""
++ """Like regular glob but replaces \\ with / in returned paths."""
+ return [s.replace('\\', '/') for s in glob.glob(dirname)]
+
+ def main():
+diff -up chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py.me chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py
+--- chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py.me 2024-01-15 20:52:38.016479000 +0100
++++ chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py 2024-01-15 20:52:48.863699640 +0100
+@@ -28,7 +28,7 @@ import platform
+ import sys
+
+ def glob_slash(dirname):
+- """Like regular glob but replaces \ with / in returned paths."""
++ """Like regular glob but replaces \\ with / in returned paths."""
+ return [s.replace('\\', '/') for s in glob.glob(dirname)]
+
+ def main():
diff --git a/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch b/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
new file mode 100644
index 0000000000000..4014f9a827648
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
@@ -0,0 +1,22 @@
+--- a/build/config/clang/BUILD.gn
++++ b/build/config/clang/BUILD.gn
+@@ -128,14 +128,15 @@
+ } else if (is_apple) {
+ _dir = "darwin"
+ } else if (is_linux || is_chromeos) {
++ _dir = "linux"
+ if (current_cpu == "x64") {
+- _dir = "x86_64-unknown-linux-gnu"
++ _suffix = "-x86_64"
+ } else if (current_cpu == "x86") {
+- _dir = "i386-unknown-linux-gnu"
++ _suffix = "-i386"
+ } else if (current_cpu == "arm") {
+- _dir = "armv7-unknown-linux-gnueabihf"
++ _suffix = "-armhf"
+ } else if (current_cpu == "arm64") {
+- _dir = "aarch64-unknown-linux-gnu"
++ _suffix = "-aarch64"
+ } else {
+ assert(false) # Unhandled cpu type
+ }
diff --git a/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch b/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
new file mode 100644
index 0000000000000..25c3422982933
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
@@ -0,0 +1,10 @@
+--- a/build/rust/std/BUILD.gn
++++ b/build/rust/std/BUILD.gn
+@@ -100,7 +100,6 @@
+ # don't need to pass to the C++ linker because they're used for specialized
+ # purposes.
+ skip_stdlib_files = [
+- "profiler_builtins",
+ "rustc_std_workspace_alloc",
+ "rustc_std_workspace_core",
+ "rustc_std_workspace_std",
diff --git a/srcpkgs/chromium/patches/chromium-121-system-old-ffmpeg.patch b/srcpkgs/chromium/patches/chromium-121-system-old-ffmpeg.patch
new file mode 100644
index 0000000000000..0398e5b697f90
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-system-old-ffmpeg.patch
@@ -0,0 +1,34 @@
+diff -up chromium-121.0.6167.57/media/ffmpeg/ffmpeg_common.cc.me chromium-121.0.6167.57/media/ffmpeg/ffmpeg_common.cc
+--- chromium-121.0.6167.57/media/ffmpeg/ffmpeg_common.cc.me 2024-01-16 10:54:38.994173911 +0100
++++ chromium-121.0.6167.57/media/ffmpeg/ffmpeg_common.cc 2024-01-16 11:06:20.974160612 +0100
+@@ -710,8 +710,13 @@ bool AVStreamToVideoDecoderConfig(const
+ }
+
+ VideoTransformation video_transformation = VideoTransformation();
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(60, 31, 102)
++ for (int i = 0; i < stream->nb_side_data; i++) {
++ const auto& side_data = stream->side_data[i];
++#else
+ for (int i = 0; i < stream->codecpar->nb_coded_side_data; ++i) {
+ const auto& side_data = stream->codecpar->coded_side_data[i];
++#endif
+ switch (side_data.type) {
+ case AV_PKT_DATA_DISPLAYMATRIX: {
+ CHECK_EQ(side_data.size, sizeof(int32_t) * 3 * 3);
+diff -up chromium-121.0.6167.57/media/filters/audio_video_metadata_extractor.cc.me chromium-121.0.6167.57/media/filters/audio_video_metadata_extractor.cc
+--- chromium-121.0.6167.57/media/filters/audio_video_metadata_extractor.cc.me 2024-01-16 11:12:27.521534151 +0100
++++ chromium-121.0.6167.57/media/filters/audio_video_metadata_extractor.cc 2024-01-16 11:15:08.717337026 +0100
+@@ -113,8 +113,13 @@ bool AudioVideoMetadataExtractor::Extrac
+ if (!stream)
+ continue;
+
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(60, 31, 102)
++ for (int j = 0; j < stream->nb_side_data; j++) {
++ const AVPacketSideData& sd = stream->side_data[j];
++#else
+ for (int j = 0; j < stream->codecpar->nb_coded_side_data; j++) {
+ const AVPacketSideData& sd = stream->codecpar->coded_side_data[j];
++#endif
+ if (sd.type == AV_PKT_DATA_DISPLAYMATRIX) {
+ CHECK_EQ(sd.size, sizeof(int32_t) * 3 * 3);
+ rotation_ = VideoTransformation::FromFFmpegDisplayMatrix(
diff --git a/srcpkgs/chromium/patches/chromium-120-typename.patch b/srcpkgs/chromium/patches/chromium-121-typename.patch
similarity index 78%
rename from srcpkgs/chromium/patches/chromium-120-typename.patch
rename to srcpkgs/chromium/patches/chromium-121-typename.patch
index 9a2d878b12b54..e83e62c60a54e 100644
--- a/srcpkgs/chromium/patches/chromium-120-typename.patch
+++ b/srcpkgs/chromium/patches/chromium-121-typename.patch
@@ -203,3 +203,57 @@ diff -up chromium-120.0.6099.56/third_party/blink/renderer/bindings/core/v8/asyn
ExceptionState& exception_state) = 0;
};
+diff -up chromium-121.0.6167.57/base/functional/bind_internal.h.me chromium-121.0.6167.57/base/functional/bind_internal.h
+--- chromium-121.0.6167.57/base/functional/bind_internal.h.me 2024-01-21 16:10:09.809037581 +0100
++++ chromium-121.0.6167.57/base/functional/bind_internal.h 2024-01-21 16:46:33.759397303 +0100
+@@ -1533,11 +1533,11 @@ template <int i,
+ typename Param>
+ struct ParamCanBeBound {
+ private:
+- using UnwrappedParam = BindArgument<i>::template ForwardedAs<
++ using UnwrappedParam = typename BindArgument<i>::template ForwardedAs<
+ Unwrapped>::template ToParamWithType<Param>;
+- using ParamStorage = BindArgument<i>::template ToParamWithType<
++ using ParamStorage = typename BindArgument<i>::template ToParamWithType<
+ Param>::template StoredAs<Storage>;
+- using BoundStorage =
++ using BoundStorage = typename
+ BindArgument<i>::template BoundAs<Arg>::template StoredAs<Storage>;
+
+ // We forbid callbacks from using raw_ptr as a parameter. However, we allow
+diff -up chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h
+--- chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me 2024-01-21 17:23:37.786606428 +0100
++++ chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h 2024-01-21 17:23:58.582127103 +0100
+@@ -90,7 +90,7 @@ template <typename Container>
+ { c[i] } -> std::same_as<typename Container::reference>;
+ }
+ struct ArrayTraits<Container> {
+- using Element = Container::value_type;
++ using Element = typename Container::value_type;
+
+ // vector-like containers have no built-in null.
+ static bool IsNull(const Container& c) { return false; }
+diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h
+--- chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me 2024-01-21 17:33:40.030897838 +0100
++++ chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h 2024-01-21 17:34:11.518705266 +0100
+@@ -25,7 +25,7 @@ void SetExecutionRequestTemplate(
+
+ // Request is set by the feature and should always be typed.
+ auto typed_request =
+- static_cast<const FeatureType::Request&>(request_metadata);
++ static_cast<const typename FeatureType::Request&>(request_metadata);
+ *(logging_data->mutable_request_data()) = typed_request;
+ }
+
+diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h
+--- chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me 2024-01-21 17:32:42.367417619 +0100
++++ chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h 2024-01-21 17:33:25.732531198 +0100
+@@ -29,7 +29,7 @@ class ModelQualityLogEntry {
+ }
+
+ template <typename FeatureType>
+- FeatureType::Quality* quality_data() {
++ typename FeatureType::Quality* quality_data() {
+ return FeatureType::GetLoggingData(*log_ai_data_request_)
+ ->mutable_quality_data();
+ }
diff --git a/srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch b/srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
similarity index 75%
rename from srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch
rename to srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
index b06e29f29047a..192b0692fbf73 100644
--- a/srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch
+++ b/srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
@@ -25,27 +25,29 @@ diff -up chromium-115.0.5790.32/content/browser/service_worker/service_worker_co
DCHECK(document_url.is_valid());
TRACE_EVENT1("ServiceWorker",
-diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc
---- chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me 2023-12-03 22:17:50.922083200 +0100
-+++ chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-03 22:22:55.437484343 +0100
-@@ -3447,7 +3447,8 @@ void GridLayoutAlgorithm::PlaceGridItems
+diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc
+--- chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than 2023-12-19 17:57:56.205197246 +0100
++++ chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-19 18:10:13.778634531 +0100
+@@ -3527,8 +3527,8 @@ void GridLayoutAlgorithm::PlaceGridItems
DCHECK(out_row_break_between);
- const auto& container_space = ConstraintSpace();
+ const auto& container_space = GetConstraintSpace();
- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData();
+-
+ const auto& [grid_items, l_d, tree_size] = sizing_tree.TreeRootData();
+ const auto& layout_data = l_d;
-
const auto* cached_layout_subtree = container_space.GetGridLayoutSubtree();
const auto container_writing_direction =
-@@ -3611,7 +3612,9 @@ void GridLayoutAlgorithm::PlaceGridItems
+ container_space.GetWritingDirection();
+@@ -3691,8 +3691,9 @@ void GridLayoutAlgorithm::PlaceGridItems
// TODO(ikilpatrick): Update |SetHasSeenAllChildren| and early exit if true.
- const auto& constraint_space = ConstraintSpace();
+ const auto& constraint_space = GetConstraintSpace();
- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData();
+-
+ const auto& [g_i, l_d, tree_size] = sizing_tree.TreeRootData();
+ const auto& grid_items = g_i;
+ const auto& layout_data = l_d;
-
const auto* cached_layout_subtree = constraint_space.GetGridLayoutSubtree();
const auto container_writing_direction =
+ constraint_space.GetWritingDirection();
diff --git a/srcpkgs/chromium/template b/srcpkgs/chromium/template
index 5613fa3813822..197ac9fa07346 100644
--- a/srcpkgs/chromium/template
+++ b/srcpkgs/chromium/template
@@ -1,13 +1,13 @@
# Template file for 'chromium'
pkgname=chromium
# See https://chromiumdash.appspot.com/releases?platform=Linux for the latest version
-version=120.0.6099.129
+version=121.0.6167.85
revision=1
archs="i686* x86_64* aarch64* armv7l*"
hostmakedepends="
$(vopt_if clang "clang lld llvm15")
bison git gperf hwids ninja nodejs perl pkg-config python3
- libepoxy-devel libevent-devel libglib-devel"
+ libepoxy-devel libevent-devel libglib-devel rust"
makedepends="
alsa-lib-devel libdav1d-devel brotli-devel cups-devel elfutils-devel ffmpeg-devel
fontconfig-devel freetype-devel gtk+3-devel libXScrnSaver-devel
@@ -27,7 +27,7 @@ maintainer="Duncaen <duncaen@voidlinux.org>"
license="BSD-3-Clause"
homepage="https://www.chromium.org/"
distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/${pkgname}-${version}.tar.xz"
-checksum=be36d5abecfafdc68d9b27b0bee65136316610a295e844b99483a7520b245f85
+checksum=a2f46c5266681126ea9e15c1c3067560d84f3e5d902e1ace934a3813c84e7152
lib32disabled=yes
@@ -188,7 +188,6 @@ do_configure() {
conf=(
'enable_nacl=false'
- 'enable_rust=false'
'use_sysroot=false'
@@ -198,12 +197,15 @@ do_configure() {
"use_lld=$(vopt_if clang true false)"
'clang_use_chrome_plugins=false'
'clang_base_path="/usr"'
+ "clang_version=\"$(clang -dumpversion)\""
"gold_path=\"${XBPS_CROSS_BASE}/usr/bin/ld.gold\""
"use_custom_libcxx=$(vopt_if libcxx true false)" # https://github.com/llvm/llvm-project/issues/61705
'use_gold=false'
+ 'enable_rust=true'
'rust_sysroot_absolute="/usr"'
+ "rustc_version=\"$(rustc --version)\""
# is_debug makes the build a debug build, changes some things.
# might be useful for real debugging vs just debug symbols.
@@ -293,6 +295,9 @@ do_configure() {
}
do_build() {
+ # XXX: need for error: the option `Z` is only accepted on the nightly compiler
+ export RUSTC_BOOTSTRAP=1
+
_setup_toolchain
CCACHE_SLOPPINESS=include_file_mtime ninja -C out/Release ${makejobs} chrome chromedriver.unstripped chrome_crashpad_handler
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PR PATCH] [Updated] chromium: update to 121.0.6167.85.
2024-01-25 15:39 [PR PATCH] chromium: update to 121.0.6167.85 Duncaen
@ 2024-02-10 23:38 ` Duncaen
2024-02-11 1:46 ` Duncaen
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Duncaen @ 2024-02-10 23:38 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 411 bytes --]
There is an updated pull request by Duncaen against master on the void-packages repository
https://github.com/Duncaen/void-packages chromium-121
https://github.com/void-linux/void-packages/pull/48367
chromium: update to 121.0.6167.85.
[ci skip]
* [ ] x86_64-glibc
* [ ] x86_64-musl
* [ ] aarch64-musl
* [ ] i686
A patch file from https://github.com/void-linux/void-packages/pull/48367.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-chromium-121-48367.patch --]
[-- Type: text/x-diff, Size: 132711 bytes --]
From 1b85c5b583b71cf9013a38d0074686d26301310c Mon Sep 17 00:00:00 2001
From: Duncaen <duncaen@voidlinux.org>
Date: Thu, 25 Jan 2024 16:07:07 +0100
Subject: [PATCH] chromium: update to 121.0.6167.85.
---
...ERT-roll-src-third_party-ffmpeg-m102.patch | 333 -------------
...oll-src-third_party-ffmpeg-m102.patch.args | 1 -
...ERT-roll-src-third_party-ffmpeg-m106.patch | 55 ---
...oll-src-third_party-ffmpeg-m106.patch.args | 1 -
.../patches/chromium-119-ffmpeg-4.4.patch | 20 -
.../chromium-120-arm64-memory_tagging.patch | 14 -
...romium-120-el7-clang-version-warning.patch | 16 -
.../chromium-120-gn-workaround-atspi.patch | 13 -
| 459 ------------------
.../chromium-121-arm64-memory_tagging.patch | 13 +
.../patches/chromium-121-constexpr.patch | 12 +
...romium-121-el7-clang-version-warning.patch | 15 +
...onstructor-involving-anonymous-union.patch | 12 +
| 459 ++++++++++++++++++
.../patches/chromium-121-mnemonic-error.patch | 12 +
...hromium-121-no_matching_constructor.patch} | 407 ++++++++++++----
...-121-nullptr_t-without-namespace-std.patch | 12 +
...-121-python3-invalid-escape-sequence.patch | 77 +++
.../patches/chromium-121-rust-clang_lib.patch | 22 +
...m-121-rust-without-profiler_builtins.patch | 10 +
...name.patch => chromium-121-typename.patch} | 54 +++
...around_clang_bug-structured_binding.patch} | 20 +-
srcpkgs/chromium/patches/gcc13-wnoerror.patch | 21 -
...undle-ffmpeg-av_stream_get_first_dts.patch | 12 -
srcpkgs/chromium/template | 34 +-
25 files changed, 1035 insertions(+), 1069 deletions(-)
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
delete mode 100644 srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-constexpr.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
rename srcpkgs/chromium/patches/{chromium-120-no_matching_constructor.patch => chromium-121-no_matching_constructor.patch} (75%)
create mode 100644 srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
rename srcpkgs/chromium/patches/{chromium-120-typename.patch => chromium-121-typename.patch} (78%)
rename srcpkgs/chromium/patches/{chromium-120-workaround_clang_bug-structured_binding.patch => chromium-121-workaround_clang_bug-structured_binding.patch} (75%)
delete mode 100644 srcpkgs/chromium/patches/gcc13-wnoerror.patch
delete mode 100644 srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
deleted file mode 100644
index e739b40a2733c..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
+++ /dev/null
@@ -1,333 +0,0 @@
-From 6e554a30893150793c2638e3689cf208ffc8e375 Mon Sep 17 00:00:00 2001
-From: Dale Curtis <dalecurtis@chromium.org>
-Date: Sat, 2 Apr 2022 05:13:53 +0000
-Subject: [PATCH] Roll src/third_party/ffmpeg/ 574c39cce..32b2d1d526 (1125
- commits)
-
-https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/574c39cce323..32b2d1d526
-
-Created with:
- roll-dep src/third_party/ffmpeg
-
-Fixed: 1293918
-Cq-Include-Trybots: luci.chromium.try:mac_chromium_asan_rel_ng,linux_chromium_asan_rel_ng,linux_chromium_chromeos_asan_rel_ng
-Change-Id: I41945d0f963e3d1f65940067bac22f63b68e37d2
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3565647
-Auto-Submit: Dale Curtis <dalecurtis@chromium.org>
-Reviewed-by: Dan Sanders <sandersd@chromium.org>
-Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#988253}
----
- .../clear_key_cdm/ffmpeg_cdm_audio_decoder.cc | 29 ++++++++++---------
- media/ffmpeg/ffmpeg_common.cc | 11 +++----
- media/filters/audio_file_reader.cc | 9 +++---
- media/filters/audio_file_reader_unittest.cc | 6 ++--
- .../filters/audio_video_metadata_extractor.cc | 11 +++++--
- .../filters/ffmpeg_aac_bitstream_converter.cc | 7 +++--
- ...ffmpeg_aac_bitstream_converter_unittest.cc | 2 +-
- media/filters/ffmpeg_audio_decoder.cc | 13 +++++----
- 8 files changed, 51 insertions(+), 37 deletions(-)
-
-diff --git a/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc b/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-index e4fc3f460e2..9b1ad9f7675 100644
---- a/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-+++ b/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-@@ -74,7 +74,7 @@ void CdmAudioDecoderConfigToAVCodecContext(
- codec_context->sample_fmt = AV_SAMPLE_FMT_NONE;
- }
-
-- codec_context->channels = config.channel_count;
-+ codec_context->ch_layout.nb_channels = config.channel_count;
- codec_context->sample_rate = config.samples_per_second;
-
- if (config.extra_data) {
-@@ -124,8 +124,8 @@ void CopySamples(cdm::AudioFormat cdm_format,
- case cdm::kAudioFormatPlanarS16:
- case cdm::kAudioFormatPlanarF32: {
- const int decoded_size_per_channel =
-- decoded_audio_size / av_frame.channels;
-- for (int i = 0; i < av_frame.channels; ++i) {
-+ decoded_audio_size / av_frame.ch_layout.nb_channels;
-+ for (int i = 0; i < av_frame.ch_layout.nb_channels; ++i) {
- memcpy(output_buffer, av_frame.extended_data[i],
- decoded_size_per_channel);
- output_buffer += decoded_size_per_channel;
-@@ -185,13 +185,14 @@ bool FFmpegCdmAudioDecoder::Initialize(
- // Success!
- decoding_loop_ = std::make_unique<FFmpegDecodingLoop>(codec_context_.get());
- samples_per_second_ = config.samples_per_second;
-- bytes_per_frame_ = codec_context_->channels * config.bits_per_channel / 8;
-+ bytes_per_frame_ =
-+ codec_context_->ch_layout.nb_channels * config.bits_per_channel / 8;
- output_timestamp_helper_ =
- std::make_unique<AudioTimestampHelper>(config.samples_per_second);
- is_initialized_ = true;
-
- // Store initial values to guard against midstream configuration changes.
-- channels_ = codec_context_->channels;
-+ channels_ = codec_context_->ch_layout.nb_channels;
- av_sample_format_ = codec_context_->sample_fmt;
-
- return true;
-@@ -291,17 +292,19 @@ cdm::Status FFmpegCdmAudioDecoder::DecodeBuffer(
- for (auto& frame : audio_frames) {
- int decoded_audio_size = 0;
- if (frame->sample_rate != samples_per_second_ ||
-- frame->channels != channels_ || frame->format != av_sample_format_) {
-+ frame->ch_layout.nb_channels != channels_ ||
-+ frame->format != av_sample_format_) {
- DLOG(ERROR) << "Unsupported midstream configuration change!"
- << " Sample Rate: " << frame->sample_rate << " vs "
-- << samples_per_second_ << ", Channels: " << frame->channels
-- << " vs " << channels_ << ", Sample Format: " << frame->format
-- << " vs " << av_sample_format_;
-+ << samples_per_second_
-+ << ", Channels: " << frame->ch_layout.nb_channels << " vs "
-+ << channels_ << ", Sample Format: " << frame->format << " vs "
-+ << av_sample_format_;
- return cdm::kDecodeError;
- }
-
- decoded_audio_size = av_samples_get_buffer_size(
-- nullptr, codec_context_->channels, frame->nb_samples,
-+ nullptr, codec_context_->ch_layout.nb_channels, frame->nb_samples,
- codec_context_->sample_fmt, 1);
- if (!decoded_audio_size)
- continue;
-@@ -320,9 +323,9 @@ bool FFmpegCdmAudioDecoder::OnNewFrame(
- size_t* total_size,
- std::vector<std::unique_ptr<AVFrame, ScopedPtrAVFreeFrame>>* audio_frames,
- AVFrame* frame) {
-- *total_size += av_samples_get_buffer_size(nullptr, codec_context_->channels,
-- frame->nb_samples,
-- codec_context_->sample_fmt, 1);
-+ *total_size += av_samples_get_buffer_size(
-+ nullptr, codec_context_->ch_layout.nb_channels, frame->nb_samples,
-+ codec_context_->sample_fmt, 1);
- audio_frames->emplace_back(av_frame_clone(frame));
- return true;
- }
-diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc
-index 87ca8969626..76f03d6608e 100644
---- a/media/ffmpeg/ffmpeg_common.cc
-+++ b/media/ffmpeg/ffmpeg_common.cc
-@@ -345,10 +345,11 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
- codec_context->sample_fmt, codec_context->codec_id);
-
- ChannelLayout channel_layout =
-- codec_context->channels > 8
-+ codec_context->ch_layout.nb_channels > 8
- ? CHANNEL_LAYOUT_DISCRETE
-- : ChannelLayoutToChromeChannelLayout(codec_context->channel_layout,
-- codec_context->channels);
-+ : ChannelLayoutToChromeChannelLayout(
-+ codec_context->ch_layout.u.mask,
-+ codec_context->ch_layout.nb_channels);
-
- int sample_rate = codec_context->sample_rate;
- switch (codec) {
-@@ -401,7 +402,7 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
- extra_data, encryption_scheme, seek_preroll,
- codec_context->delay);
- if (channel_layout == CHANNEL_LAYOUT_DISCRETE)
-- config->SetChannelsForDiscrete(codec_context->channels);
-+ config->SetChannelsForDiscrete(codec_context->ch_layout.nb_channels);
-
- #if BUILDFLAG(ENABLE_PLATFORM_AC3_EAC3_AUDIO)
- // These are bitstream formats unknown to ffmpeg, so they don't have
-@@ -470,7 +471,7 @@ void AudioDecoderConfigToAVCodecContext(const AudioDecoderConfig& config,
-
- // TODO(scherkus): should we set |channel_layout|? I'm not sure if FFmpeg uses
- // said information to decode.
-- codec_context->channels = config.channels();
-+ codec_context->ch_layout.nb_channels = config.channels();
- codec_context->sample_rate = config.samples_per_second();
-
- if (config.extra_data().empty()) {
-diff --git a/media/filters/audio_file_reader.cc b/media/filters/audio_file_reader.cc
-index 5f257bdfaa6..e1be5aa9a5b 100644
---- a/media/filters/audio_file_reader.cc
-+++ b/media/filters/audio_file_reader.cc
-@@ -113,14 +113,15 @@ bool AudioFileReader::OpenDecoder() {
-
- // Verify the channel layout is supported by Chrome. Acts as a sanity check
- // against invalid files. See http://crbug.com/171962
-- if (ChannelLayoutToChromeChannelLayout(codec_context_->channel_layout,
-- codec_context_->channels) ==
-+ if (ChannelLayoutToChromeChannelLayout(
-+ codec_context_->ch_layout.u.mask,
-+ codec_context_->ch_layout.nb_channels) ==
- CHANNEL_LAYOUT_UNSUPPORTED) {
- return false;
- }
-
- // Store initial values to guard against midstream configuration changes.
-- channels_ = codec_context_->channels;
-+ channels_ = codec_context_->ch_layout.nb_channels;
- audio_codec_ = CodecIDToAudioCodec(codec_context_->codec_id);
- sample_rate_ = codec_context_->sample_rate;
- av_sample_format_ = codec_context_->sample_fmt;
-@@ -223,7 +224,7 @@ bool AudioFileReader::OnNewFrame(
- if (frames_read < 0)
- return false;
-
-- const int channels = frame->channels;
-+ const int channels = frame->ch_layout.nb_channels;
- if (frame->sample_rate != sample_rate_ || channels != channels_ ||
- frame->format != av_sample_format_) {
- DLOG(ERROR) << "Unsupported midstream configuration change!"
-diff --git a/media/filters/audio_file_reader_unittest.cc b/media/filters/audio_file_reader_unittest.cc
-index 2aba7927a31..1f45a50cace 100644
---- a/media/filters/audio_file_reader_unittest.cc
-+++ b/media/filters/audio_file_reader_unittest.cc
-@@ -121,11 +121,11 @@ class AudioFileReaderTest : public testing::Test {
- EXPECT_FALSE(reader_->Open());
- }
-
-- void RunTestFailingDecode(const char* fn) {
-+ void RunTestFailingDecode(const char* fn, int expect_read = 0) {
- Initialize(fn);
- EXPECT_TRUE(reader_->Open());
- std::vector<std::unique_ptr<AudioBus>> decoded_audio_packets;
-- EXPECT_EQ(reader_->Read(&decoded_audio_packets), 0);
-+ EXPECT_EQ(reader_->Read(&decoded_audio_packets), expect_read);
- }
-
- void RunTestPartialDecode(const char* fn) {
-@@ -219,7 +219,7 @@ TEST_F(AudioFileReaderTest, AAC_ADTS) {
- }
-
- TEST_F(AudioFileReaderTest, MidStreamConfigChangesFail) {
-- RunTestFailingDecode("midstream_config_change.mp3");
-+ RunTestFailingDecode("midstream_config_change.mp3", 42624);
- }
- #endif
-
-diff --git a/media/filters/audio_video_metadata_extractor.cc b/media/filters/audio_video_metadata_extractor.cc
-index 185819eb936..69ff508c221 100644
---- a/media/filters/audio_video_metadata_extractor.cc
-+++ b/media/filters/audio_video_metadata_extractor.cc
-@@ -113,6 +113,15 @@ bool AudioVideoMetadataExtractor::Extract(DataSource* source,
- if (!stream)
- continue;
-
-+ void* display_matrix =
-+ av_stream_get_side_data(stream, AV_PKT_DATA_DISPLAYMATRIX, nullptr);
-+ if (display_matrix) {
-+ rotation_ = VideoTransformation::FromFFmpegDisplayMatrix(
-+ static_cast<int32_t*>(display_matrix))
-+ .rotation;
-+ info.tags["rotate"] = base::NumberToString(rotation_);
-+ }
-+
- // Extract dictionary from streams also. Needed for containers that attach
- // metadata to contained streams instead the container itself, like OGG.
- ExtractDictionary(stream->metadata, &info.tags);
-@@ -255,8 +264,6 @@ void AudioVideoMetadataExtractor::ExtractDictionary(AVDictionary* metadata,
- if (raw_tags->find(tag->key) == raw_tags->end())
- (*raw_tags)[tag->key] = tag->value;
-
-- if (ExtractInt(tag, "rotate", &rotation_))
-- continue;
- if (ExtractString(tag, "album", &album_))
- continue;
- if (ExtractString(tag, "artist", &artist_))
-diff --git a/media/filters/ffmpeg_aac_bitstream_converter.cc b/media/filters/ffmpeg_aac_bitstream_converter.cc
-index 6f231c85729..ca5e5fb927d 100644
---- a/media/filters/ffmpeg_aac_bitstream_converter.cc
-+++ b/media/filters/ffmpeg_aac_bitstream_converter.cc
-@@ -195,14 +195,15 @@ bool FFmpegAACBitstreamConverter::ConvertPacket(AVPacket* packet) {
- if (!header_generated_ || codec_ != stream_codec_parameters_->codec_id ||
- audio_profile_ != stream_codec_parameters_->profile ||
- sample_rate_index_ != sample_rate_index ||
-- channel_configuration_ != stream_codec_parameters_->channels ||
-+ channel_configuration_ !=
-+ stream_codec_parameters_->ch_layout.nb_channels ||
- frame_length_ != header_plus_packet_size) {
- header_generated_ =
- GenerateAdtsHeader(stream_codec_parameters_->codec_id,
- 0, // layer
- stream_codec_parameters_->profile, sample_rate_index,
- 0, // private stream
-- stream_codec_parameters_->channels,
-+ stream_codec_parameters_->ch_layout.nb_channels,
- 0, // originality
- 0, // home
- 0, // copyrighted_stream
-@@ -214,7 +215,7 @@ bool FFmpegAACBitstreamConverter::ConvertPacket(AVPacket* packet) {
- codec_ = stream_codec_parameters_->codec_id;
- audio_profile_ = stream_codec_parameters_->profile;
- sample_rate_index_ = sample_rate_index;
-- channel_configuration_ = stream_codec_parameters_->channels;
-+ channel_configuration_ = stream_codec_parameters_->ch_layout.nb_channels;
- frame_length_ = header_plus_packet_size;
- }
-
-diff --git a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-index 1fd4c5ccd7d..f59bcd8fdaf 100644
---- a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-+++ b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-@@ -34,7 +34,7 @@ class FFmpegAACBitstreamConverterTest : public testing::Test {
- memset(&test_parameters_, 0, sizeof(AVCodecParameters));
- test_parameters_.codec_id = AV_CODEC_ID_AAC;
- test_parameters_.profile = FF_PROFILE_AAC_MAIN;
-- test_parameters_.channels = 2;
-+ test_parameters_.ch_layout.nb_channels = 2;
- test_parameters_.extradata = extradata_header_;
- test_parameters_.extradata_size = sizeof(extradata_header_);
- }
-diff --git a/media/filters/ffmpeg_audio_decoder.cc b/media/filters/ffmpeg_audio_decoder.cc
-index 6a56c675f7d..4615fdeb3fb 100644
---- a/media/filters/ffmpeg_audio_decoder.cc
-+++ b/media/filters/ffmpeg_audio_decoder.cc
-@@ -28,7 +28,7 @@ namespace media {
-
- // Return the number of channels from the data in |frame|.
- static inline int DetermineChannels(AVFrame* frame) {
-- return frame->channels;
-+ return frame->ch_layout.nb_channels;
- }
-
- // Called by FFmpeg's allocation routine to allocate a buffer. Uses
-@@ -231,7 +231,7 @@ bool FFmpegAudioDecoder::OnNewFrame(const DecoderBuffer& buffer,
- // Translate unsupported into discrete layouts for discrete configurations;
- // ffmpeg does not have a labeled discrete configuration internally.
- ChannelLayout channel_layout = ChannelLayoutToChromeChannelLayout(
-- codec_context_->channel_layout, codec_context_->channels);
-+ codec_context_->ch_layout.u.mask, codec_context_->ch_layout.nb_channels);
- if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED &&
- config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE) {
- channel_layout = CHANNEL_LAYOUT_DISCRETE;
-@@ -348,11 +348,11 @@ bool FFmpegAudioDecoder::ConfigureDecoder(const AudioDecoderConfig& config) {
- // Success!
- av_sample_format_ = codec_context_->sample_fmt;
-
-- if (codec_context_->channels != config.channels()) {
-+ if (codec_context_->ch_layout.nb_channels != config.channels()) {
- MEDIA_LOG(ERROR, media_log_)
- << "Audio configuration specified " << config.channels()
- << " channels, but FFmpeg thinks the file contains "
-- << codec_context_->channels << " channels";
-+ << codec_context_->ch_layout.nb_channels << " channels";
- ReleaseFFmpegResources();
- state_ = DecoderState::kUninitialized;
- return false;
-@@ -403,7 +403,7 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
- if (frame->nb_samples <= 0)
- return AVERROR(EINVAL);
-
-- if (s->channels != channels) {
-+ if (s->ch_layout.nb_channels != channels) {
- DLOG(ERROR) << "AVCodecContext and AVFrame disagree on channel count.";
- return AVERROR(EINVAL);
- }
-@@ -436,7 +436,8 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
- ChannelLayout channel_layout =
- config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE
- ? CHANNEL_LAYOUT_DISCRETE
-- : ChannelLayoutToChromeChannelLayout(s->channel_layout, s->channels);
-+ : ChannelLayoutToChromeChannelLayout(s->ch_layout.u.mask,
-+ s->ch_layout.nb_channels);
-
- if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED) {
- DLOG(ERROR) << "Unsupported channel layout.";
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
deleted file mode 100644
index 8bbbbe9483632..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
+++ /dev/null
@@ -1 +0,0 @@
--RNp1
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
deleted file mode 100644
index b2a113791734c..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From ded379824f5de39357b6b1894578101aba5cdf05 Mon Sep 17 00:00:00 2001
-From: Eugene Zemtsov <eugene@chromium.org>
-Date: Fri, 29 Jul 2022 04:41:04 +0000
-Subject: [PATCH] Roll src/third_party/ffmpeg/ 880df5ede..b71ecd02b (279
- commits)
-
-https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/880df5ede50a..b71ecd02b479
-
-$ git log 880df5ede..b71ecd02b --date=short --no-merges --format='%ad %ae %s'
-2022-07-27 eugene Roll for M106
-2022-07-25 andreas.rheinhardt avcodec/x86/pngdsp: Remove obsolete ff_add_bytes_l2_mmx()
-2022-07-22 andreas.rheinhardt avcodec/hevcdec: Output MD5-message in one piece
-2022-07-24 epirat07 configure: properly require libx264 if enabled
-2022-07-24 zane avformat/argo_cvg: expose loop/reverb/checksum via metadata
-(...)
-2022-05-03 leo.izen avcodec/libjxldec: properly tag output colorspace
-2022-06-25 ffmpeg avfilter/Makefile: always make colorspace.o
-2022-03-02 brad avutil/ppc/cpu: Use proper header for OpenBSD PPC CPU detection
-2022-06-24 jamrial avformat/http: include version.h
-2022-05-16 mbonda-at-nvidia.com AV1 VDPAU hwaccel Decode support
-
-Created with:
- roll-dep src/third_party/ffmpeg
-
-ffmpeg usage fix:
- Switch from AVFrame::pkt_duration to AVFrame::duration,
- AVFrame::pkt_duration is deprecated
-
-Bug: 1344646
-Change-Id: Iaa3abf48ef81dae6d282bca8f0fa2a8dffeeba25
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3788638
-Reviewed-by: Will Cassella <cassew@chromium.org>
-Commit-Queue: Eugene Zemtsov <eugene@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#1029623}
----
- media/filters/audio_file_reader.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/media/filters/audio_file_reader.cc b/media/filters/audio_file_reader.cc
-index e1be5aa9a5b..951c003956f 100644
---- a/media/filters/audio_file_reader.cc
-+++ b/media/filters/audio_file_reader.cc
-@@ -243,10 +243,10 @@ bool AudioFileReader::OnNewFrame(
- // silence from being output. In the case where we are also discarding some
- // portion of the packet (as indicated by a negative pts), we further want to
- // adjust the duration downward by however much exists before zero.
-- if (audio_codec_ == AudioCodec::kAAC && frame->pkt_duration) {
-+ if (audio_codec_ == AudioCodec::kAAC && frame->duration) {
- const base::TimeDelta pkt_duration = ConvertFromTimeBase(
- glue_->format_context()->streams[stream_index_]->time_base,
-- frame->pkt_duration + std::min(static_cast<int64_t>(0), frame->pts));
-+ frame->duration + std::min(static_cast<int64_t>(0), frame->pts));
- const base::TimeDelta frame_duration =
- base::Seconds(frames_read / static_cast<double>(sample_rate_));
-
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
deleted file mode 100644
index 8bbbbe9483632..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
+++ /dev/null
@@ -1 +0,0 @@
--RNp1
diff --git a/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch b/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
deleted file mode 100644
index 04d04b166ba37..0000000000000
--- a/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/media/filters/ffmpeg_demuxer.cc.orig
-+++ b/media/filters/ffmpeg_demuxer.cc
-@@ -390,7 +390,7 @@
-
- scoped_refptr<DecoderBuffer> buffer;
-
-- size_t side_data_size = 0;
-+ int side_data_size = 0;
- uint8_t* side_data = av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
-
-@@ -453,7 +453,7 @@
- packet->size - data_offset);
- }
-
-- size_t skip_samples_size = 0;
-+ int skip_samples_size = 0;
- const uint32_t* skip_samples_ptr =
- reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
diff --git a/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch b/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
deleted file mode 100644
index bb461ef3664a2..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- chromium-120.0.6099.35/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.than 2023-11-26 13:50:07.005519877 +0100
-+++ chromium-120.0.6099.35/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h 2023-11-26 13:50:49.727267240 +0100
-@@ -152,10 +152,7 @@
- (!BUILDFLAG(PUT_REF_COUNT_IN_PREVIOUS_SLOT) && \
- defined(ARCH_CPU_LITTLE_ENDIAN))
-
--#define PA_CONFIG_HAS_MEMORY_TAGGING() \
-- (defined(ARCH_CPU_ARM64) && defined(__clang__) && \
-- !defined(ADDRESS_SANITIZER) && \
-- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)))
-+#define PA_CONFIG_HAS_MEMORY_TAGGING() 0
-
- #if PA_CONFIG(HAS_MEMORY_TAGGING)
- static_assert(sizeof(void*) == 8);
diff --git a/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch b/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
deleted file mode 100644
index 112da65b4d9b6..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -up chromium-120.0.6099.56/third_party/libc++/src/include/__config.me chromium-120.0.6099.56/third_party/libc++/src/include/__config
---- chromium-120.0.6099.56/third_party/libc++/src/include/__config.me 2023-12-03 00:05:51.254483474 +0100
-+++ chromium-120.0.6099.56/third_party/libc++/src/include/__config 2023-12-03 00:06:05.872863168 +0100
-@@ -32,11 +32,7 @@
-
- // Warn if a compiler version is used that is not supported anymore
- // LLVM RELEASE Update the minimum compiler versions
--# if defined(_LIBCPP_CLANG_VER)
--# if _LIBCPP_CLANG_VER < 1500
--# warning "Libc++ only supports Clang 15 and later"
--# endif
--# elif defined(_LIBCPP_APPLE_CLANG_VER)
-+# if defined(_LIBCPP_APPLE_CLANG_VER)
- # if _LIBCPP_APPLE_CLANG_VER < 1500
- # warning "Libc++ only supports AppleClang 15 and later"
- # endif
diff --git a/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch b/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
deleted file mode 100644
index 72c7b7ec41c28..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn.me chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn
---- chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn.me 2023-11-26 16:14:15.364064126 +0100
-+++ chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn 2023-11-26 16:41:16.877321990 +0100
-@@ -21,6 +21,9 @@ if (use_atk) {
- minor = atspi_version[1]
- micro = atspi_version[2]
-
-+ # gn workaround for the error: Assignment had no effect
-+ print("ATSPI Version: $major.$minor.$micro")
-+
- # ATSPI 2.49.90 now defines these for us and it's an error for us to
- # redefine them on the compiler command line.
- # See ATSPI 927344a34cd5bf81fc64da4968241735ecb4f03b
diff --git a/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch b/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
deleted file mode 100644
index 44f867475b218..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
+++ /dev/null
@@ -1,459 +0,0 @@
-diff -up chromium-110.0.5481.177/base/memory/ref_counted.h.me chromium-110.0.5481.177/base/memory/ref_counted.h
---- chromium-110.0.5481.177/base/memory/ref_counted.h.me 2023-02-23 13:34:33.174817255 -0500
-+++ chromium-110.0.5481.177/base/memory/ref_counted.h 2023-02-23 13:42:28.646052469 -0500
-@@ -6,6 +6,7 @@
- #define BASE_MEMORY_REF_COUNTED_H_
-
- #include <stddef.h>
-+#include <limits>
-
- #include <utility>
-
-diff -up chromium-109.0.5414.74/base/check_op.h.me chromium-109.0.5414.74/base/check_op.h
---- chromium-109.0.5414.74/base/check_op.h.me 2023-01-17 17:39:27.620875883 +0100
-+++ chromium-109.0.5414.74/base/check_op.h 2023-01-17 17:39:42.546060957 +0100
-@@ -5,6 +5,7 @@
- #ifndef BASE_CHECK_OP_H_
- #define BASE_CHECK_OP_H_
-
-+#include <cstdint>
- #include <cstddef>
- #include <string>
- #include <type_traits>
-diff -up chromium-109.0.5414.74/base/debug/profiler.h.me chromium-109.0.5414.74/base/debug/profiler.h
---- chromium-109.0.5414.74/base/debug/profiler.h.me 2023-01-17 16:29:26.368090073 +0100
-+++ chromium-109.0.5414.74/base/debug/profiler.h 2023-01-17 16:59:41.190628679 +0100
-@@ -7,6 +7,7 @@
-
- #include <stddef.h>
-
-+#include <cstdint>
- #include <string>
-
- #include "base/base_export.h"
-diff -up chromium-109.0.5414.74/gpu/config/gpu_feature_info.h.me chromium-109.0.5414.74/gpu/config/gpu_feature_info.h
---- chromium-109.0.5414.74/gpu/config/gpu_feature_info.h.me 2023-01-17 19:06:53.530675129 +0100
-+++ chromium-109.0.5414.74/gpu/config/gpu_feature_info.h 2023-01-17 19:07:08.874849879 +0100
-@@ -5,6 +5,7 @@
- #ifndef GPU_CONFIG_GPU_FEATURE_INFO_H_
- #define GPU_CONFIG_GPU_FEATURE_INFO_H_
-
-+#include <cstdint>
- #include <string>
- #include <vector>
-
-diff -up chromium-109.0.5414.74/net/base/net_export.h.me chromium-109.0.5414.74/net/base/net_export.h
---- chromium-109.0.5414.74/net/base/net_export.h.me 2023-01-17 18:16:34.133854615 +0100
-+++ chromium-109.0.5414.74/net/base/net_export.h 2023-01-17 18:16:15.945623153 +0100
-@@ -5,6 +5,8 @@
- #ifndef NET_BASE_NET_EXPORT_H_
- #define NET_BASE_NET_EXPORT_H_
-
-+#include <cstdint>
-+
- // Defines NET_EXPORT so that functionality implemented by the net module can
- // be exported to consumers, and NET_EXPORT_PRIVATE that allows unit tests to
- // access features not intended to be used directly by real consumers.
-diff -up chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h.me chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h
---- chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h.me 2023-01-17 17:12:34.184686515 +0100
-+++ chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h 2023-01-17 17:13:16.537162420 +0100
-@@ -5,6 +5,7 @@
- #ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
- #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
-
-+#include <cstdint>
- #include <bitset>
- #include <string>
-
-diff -up chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h.me chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h
---- chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h.me 2023-01-17 17:33:20.895717307 +0100
-+++ chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h 2023-01-17 17:34:03.456185365 +0100
-@@ -27,6 +27,7 @@
- #ifndef ABSL_STRINGS_STRING_VIEW_H_
- #define ABSL_STRINGS_STRING_VIEW_H_
-
-+#include <cstdint>
- #include <algorithm>
- #include <cassert>
- #include <cstddef>
-diff -up chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h.me chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h
---- chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h.me 2023-01-17 17:36:15.017616250 +0100
-+++ chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h 2023-01-17 17:36:48.960982195 +0100
-@@ -10,6 +10,7 @@
- #ifndef GLSLANG_SHADERVARS_H_
- #define GLSLANG_SHADERVARS_H_
-
-+#include <cstdint>
- #include <algorithm>
- #include <array>
- #include <string>
-diff -up chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.me chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h
---- chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.me 2023-01-17 19:17:40.480876171 +0100
-+++ chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h 2023-01-17 19:17:46.803958320 +0100
-@@ -5,6 +5,7 @@
- #ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
- #define THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
-
-+#include <cstdint>
- #include <array>
- #include <string>
-
-diff -up chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.me chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h
---- chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.me 2023-01-17 18:02:44.681538107 +0100
-+++ chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h 2023-01-17 18:02:57.208679140 +0100
-@@ -15,6 +15,7 @@
- #ifndef SRC_TINT_READER_SPIRV_NAMER_H_
- #define SRC_TINT_READER_SPIRV_NAMER_H_
-
-+#include <cstdint>
- #include <string>
- #include <unordered_map>
- #include <vector>
-diff -up chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.me chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h
---- chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.me 2023-01-18 15:22:38.472940648 +0100
-+++ chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h 2023-01-18 15:23:09.380255101 +0100
-@@ -5,6 +5,7 @@
- #ifndef DISCOVERY_DNSSD_PUBLIC_DNS_SD_TXT_RECORD_H_
- #define DISCOVERY_DNSSD_PUBLIC_DNS_SD_TXT_RECORD_H_
-
-+#include <cstdint>
- #include <functional>
- #include <map>
- #include <set>
-diff -up chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp.me chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp
---- chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp.me 2023-01-17 15:37:48.530626516 +0100
-+++ chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp 2023-01-17 16:57:46.025548092 +0100
-@@ -17,6 +17,7 @@
-
- #include "System/Debug.hpp"
-
-+#include <cstdint>
- #include <cstddef>
- #include <functional>
- #include <unordered_set>
-diff -up chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h.me chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h
---- chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h.me 2023-01-17 18:08:25.745491353 +0100
-+++ chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h 2023-01-17 18:08:35.777667632 +0100
-@@ -5,6 +5,7 @@
- #ifndef UI_GFX_LINEAR_GRADIENT_H_
- #define UI_GFX_LINEAR_GRADIENT_H_
-
-+#include <cstdint>
- #include <array>
- #include <string>
-
-diff -up chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h.me chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h
---- chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h.me 2023-01-19 10:10:21.287876736 +0100
-+++ chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h 2023-01-19 10:11:21.714778896 +0100
-@@ -17,6 +17,7 @@ limitations under the License.
- #define RUY_RUY_PROFILER_INSTRUMENTATION_H_
-
- #ifdef RUY_PROFILER
-+#include <string>
- #include <cstdio>
- #include <mutex>
- #include <vector>
-diff -up chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.me chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h
---- chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.me 2023-01-19 10:30:27.533861985 +0100
-+++ chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h 2023-01-19 10:31:12.585554183 +0100
-@@ -31,6 +31,7 @@ limitations under the License.
- #ifndef TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
- #define TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
-
-+#include <cstdint>
- #include <complex>
- #include <deque>
- #include <vector>
-diff -up chromium-109.0.5414.74/base/containers/flat_map.h.mee chromium-109.0.5414.74/base/containers/flat_map.h
---- chromium-109.0.5414.74/base/containers/flat_map.h.mee 2023-01-19 10:59:52.214957773 +0100
-+++ chromium-109.0.5414.74/base/containers/flat_map.h 2023-01-19 11:00:06.415215309 +0100
-@@ -5,6 +5,7 @@
- #ifndef BASE_CONTAINERS_FLAT_MAP_H_
- #define BASE_CONTAINERS_FLAT_MAP_H_
-
-+#include <cstdint>
- #include <functional>
- #include <tuple>
- #include <utility>
-diff -up chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h.mee chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h
---- chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h.mee 2023-01-19 10:36:40.571422826 +0100
-+++ chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h 2023-01-19 10:36:49.343565294 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_CRASH_CORE_APP_CRASH_REPORTER_CLIENT_H_
- #define COMPONENTS_CRASH_CORE_APP_CRASH_REPORTER_CLIENT_H_
-
-+#include <cstdint>
- #include <string>
-
- #include "build/build_config.h"
-diff -up chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h.mee chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h
---- chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h.mee 2023-01-19 11:45:15.953159755 +0100
-+++ chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h 2023-01-19 11:45:22.320246241 +0100
-@@ -5,6 +5,8 @@
- #ifndef UI_BASE_PREDICTION_KALMAN_FILTER_H_
- #define UI_BASE_PREDICTION_KALMAN_FILTER_H_
-
-+#include <cstdint>
-+
- #include "base/component_export.h"
- #include "ui/gfx/geometry/matrix3_f.h"
-
-diff -up chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h.me chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h
---- chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h.me 2023-01-19 15:20:07.620987949 +0100
-+++ chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h 2023-01-19 15:20:18.324173702 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
- #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
-
-+#include <cstdint>
- #include <string>
-
-
-diff -up chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h.me chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h
---- chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h.me 2023-01-19 16:00:14.350186515 +0100
-+++ chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h 2023-01-19 16:00:21.643307993 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
- #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
-
-+#include <cstdint>
- #include <string>
-
- namespace feature_engagement {
-diff -up chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h.me chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h
---- chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h.me 2023-01-19 15:59:18.210239416 +0100
-+++ chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h 2023-01-19 15:59:34.513515030 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
- #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
-
-+#include <cstdint>
- #include <string>
-
- #include "components/feature_engagement/internal/event_storage_validator.h"
-diff -up chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.me chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc
---- chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.me 2023-01-19 16:09:29.216477182 +0100
-+++ chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc 2023-01-19 16:10:05.657089208 +0100
-@@ -45,6 +45,7 @@
- #include "llvm/Support/SaveAndRestore.h"
- #include "llvm/Support/raw_ostream.h"
- #include <algorithm>
-+#include <cstdint>
- #include <string>
- #include <sysexits.h>
- #ifdef HAVE_BACKTRACE
-diff -up chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h.me chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h
---- chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h.me 2023-01-19 16:32:05.338160131 +0100
-+++ chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h 2023-01-19 16:32:16.213326798 +0100
-@@ -5,6 +5,7 @@
- #ifndef CHROME_BROWSER_PRIVACY_BUDGET_ENCOUNTERED_SURFACE_TRACKER_H_
- #define CHROME_BROWSER_PRIVACY_BUDGET_ENCOUNTERED_SURFACE_TRACKER_H_
-
-+#include <cstdint>
- #include <map>
-
- #include "base/containers/flat_set.h"
-diff -up chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h.me chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h
---- chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h.me 2023-01-19 16:47:55.548571102 +0100
-+++ chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h 2023-01-19 16:48:29.214146529 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
- #define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
-
-+#include <cstdint>
- #include <string>
-
- class GURL;
-diff -up chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h.me chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h
---- chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h.me 2023-01-19 16:57:29.525372814 +0100
-+++ chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h 2023-01-19 16:58:02.667979288 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
- #define COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
-
-+#include <cstdint>
- #include <string>
- #include <utility>
- #include <vector>
-diff -up chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h.me chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h
---- chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h.me 2023-01-19 17:02:45.258544665 +0100
-+++ chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h 2023-01-19 17:02:52.577611757 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
- #define COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
-
-+#include <cstdint>
- #include <stddef.h>
-
- #include <string>
-diff -up chromium-109.0.5414.74/pdf/document_attachment_info.h.me chromium-109.0.5414.74/pdf/document_attachment_info.h
---- chromium-109.0.5414.74/pdf/document_attachment_info.h.me 2023-01-19 17:28:28.552063534 +0100
-+++ chromium-109.0.5414.74/pdf/document_attachment_info.h 2023-01-19 17:28:48.072379953 +0100
-@@ -5,6 +5,7 @@
- #ifndef PDF_DOCUMENT_ATTACHMENT_INFO_H_
- #define PDF_DOCUMENT_ATTACHMENT_INFO_H_
-
-+#include <cstdint>
- #include <string>
-
-
-diff -up chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h.me chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h
---- chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h.me 2023-01-19 18:25:47.648193710 +0100
-+++ chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h 2023-01-19 18:26:11.488593556 +0100
-@@ -5,6 +5,8 @@
- #ifndef CONSTANTS_ANNOTATION_FLAGS_H_
- #define CONSTANTS_ANNOTATION_FLAGS_H_
-
-+#include <cstdint>
-+
- namespace pdfium {
- namespace annotation_flags {
-
-diff -up chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.me chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
---- chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.me 2023-04-15 16:44:55.344305412 +0200
-+++ chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h 2023-04-15 16:47:09.028666995 +0200
-@@ -2854,6 +2854,7 @@ static void vma_aligned_free(void* VMA_N
-
- // Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.
- #if VMA_STATS_STRING_ENABLED
-+#include <stdio.h>
- static inline void VmaUint32ToStr(char* VMA_NOT_NULL outStr, size_t strLen, uint32_t num)
- {
- snprintf(outStr, strLen, "%u", static_cast<unsigned int>(num));
-diff -up chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h.me chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h
---- chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h.me 2023-04-18 15:55:44.774916319 +0200
-+++ chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h 2023-04-18 15:55:54.441085882 +0200
-@@ -8,6 +8,7 @@
- #include <memory>
- #include <string>
- #include <vector>
-+#include <variant>
-
- #include "base/containers/span.h"
- #include "base/functional/callback_forward.h"
-diff -up chromium-113.0.5672.37/gin/time_clamper.h.me chromium-113.0.5672.37/gin/time_clamper.h
---- chromium-113.0.5672.37/gin/time_clamper.h.me 2023-04-18 16:38:41.180437467 +0200
-+++ chromium-113.0.5672.37/gin/time_clamper.h 2023-04-18 16:39:43.857049432 +0200
-@@ -48,7 +48,7 @@ class GIN_EXPORT TimeClamper {
- const int64_t micros = now_micros % 1000;
- // abs() is necessary for devices with times before unix-epoch (most likely
- // configured incorrectly).
-- if (abs(micros) + kResolutionMicros < 1000) {
-+ if (std::abs(micros) + kResolutionMicros < 1000) {
- return now_micros / 1000;
- }
- return ClampTimeResolution(now_micros) / 1000;
-diff -up chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc.me chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc
---- chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc.me 2023-04-21 08:07:55.362714544 +0200
-+++ chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc 2023-04-21 08:14:35.424158693 +0200
-@@ -10,6 +10,7 @@
- #include <queue>
- #include <utility>
- #include <vector>
-+#include <cstring>
-
- #include "base/check.h"
- #include "base/files/file_path.h"
-diff -up chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc.me chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc
---- chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc.me 2023-06-18 12:33:52.387412788 +0200
-+++ chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc 2023-06-18 12:35:28.229148935 +0200
-@@ -3,6 +3,7 @@
- // found in the LICENSE file.
-
- #include "skia/ext/skcolorspace_trfn.h"
-+#include <cmath>
-
- namespace skia {
-
-diff -up chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h
---- chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint 2021-11-19 17:05:31.379750350 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h 2021-11-19 17:07:35.191520127 -0500
-@@ -11,6 +11,7 @@
- #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
- #define COMMON_VIDEO_H264_SPS_PARSER_H_
-
-+#include <cstdint>
- #include "absl/types/optional.h"
- #include "rtc_base/bitstream_reader.h"
-
-diff -up chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h
---- chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint 2021-11-12 05:28:10.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h 2021-11-19 17:05:31.379750350 -0500
-@@ -11,6 +11,7 @@
- #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
- #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
-
-+#include <cstdint>
- #include <limits>
-
- #include "absl/types/optional.h"
-diff -up chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h.missing-cstdint chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h
---- chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h.missing-cstdint 2021-11-12 05:25:24.000000000 -0500
-+++ chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h 2021-11-19 17:05:31.379750350 -0500
-@@ -9,6 +9,8 @@
-
- #include "ui/gfx/buffer_types.h"
-
-+#include <cstdint>
-+
- namespace ui {
-
- int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format);
-diff -up chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc
---- chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring 2021-11-12 05:28:09.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc 2021-11-19 17:10:02.927438695 -0500
-@@ -8,6 +8,8 @@
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-+#include <cstring>
-+
- #include "audio/utility/channel_mixer.h"
-
- #include "audio/utility/channel_mixing_matrix.h"
-diff -up chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
---- chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring 2021-11-12 05:28:10.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2021-11-19 17:10:02.928438701 -0500
-@@ -10,6 +10,7 @@
-
- #include "modules/video_coding/utility/ivf_file_reader.h"
-
-+#include <cstring>
- #include <string>
- #include <vector>
-
-diff -up chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h.me chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h
---- chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h.me 2023-09-10 17:53:04.826298351 +0200
-+++ chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h 2023-09-10 17:53:22.201756894 +0200
-@@ -5,6 +5,7 @@
- #ifndef IPCZ_SRC_IPCZ_ROUTER_LINK_H_
- #define IPCZ_SRC_IPCZ_ROUTER_LINK_H_
-
-+#include <memory>
- #include <cstddef>
- #include <functional>
- #include <string>
-diff -up chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc.me chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc
---- chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc.me 2023-09-10 17:36:27.199841051 +0200
-+++ chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc 2023-09-10 17:44:51.870554233 +0200
-@@ -14,6 +14,7 @@
- * limitations under the License.
- */
-
-+#include <cmath>
- #include "cpp/palettes/tones.h"
-
- #include "cpp/cam/cam.h"
-diff -up chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h.me chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h
---- chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h.me 2023-10-01 13:55:01.913193186 +0200
-+++ chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h 2023-10-01 14:05:38.488038429 +0200
-@@ -5,6 +5,9 @@
- #ifndef SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
- #define SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
-
-+#include <cstddef>
-+#include <cstdint>
-+
- #include <type_traits>
-
- namespace device {
diff --git a/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch b/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
new file mode 100644
index 0000000000000..cf807ddb31ec7
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
@@ -0,0 +1,13 @@
+diff -up chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.me chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h
+--- chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.me 2024-01-16 14:20:52.401890657 +0100
++++ chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h 2024-01-16 15:08:04.070156474 +0100
+@@ -162,7 +162,8 @@ static_assert(sizeof(void*) != 8, "");
+
+ #if defined(ARCH_CPU_ARM64) && defined(__clang__) && \
+ !defined(ADDRESS_SANITIZER) && \
+- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID))
++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)) && \
++ __GLIBC_PREREQ(2, 29)
+ #define PA_CONFIG_HAS_MEMORY_TAGGING() 1
+ #else
+ #define PA_CONFIG_HAS_MEMORY_TAGGING() 0
diff --git a/srcpkgs/chromium/patches/chromium-121-constexpr.patch b/srcpkgs/chromium/patches/chromium-121-constexpr.patch
new file mode 100644
index 0000000000000..a0b7166a5c8f8
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-constexpr.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h.me chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h
+--- chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h.me 2024-01-18 17:00:24.791582422 +0100
++++ chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h 2024-01-18 17:22:21.521682845 +0100
+@@ -27,7 +27,7 @@ struct QueryParams {
+ QueryParams(const QueryParams& other);
+ QueryParams& operator=(const QueryParams& other);
+
+- friend constexpr bool operator==(const QueryParams&,
++ friend bool operator==(const QueryParams&,
+ const QueryParams&) = default;
+
+ // Individual resource contexts to measure.
diff --git a/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch b/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
new file mode 100644
index 0000000000000..bc86eb2355874
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
@@ -0,0 +1,15 @@
+--- chromium-121.0.6167.57/third_party/libc++/src/include/__config.orig 2024-01-16 18:38:00.995930774 +0100
++++ chromium-121.0.6167.57/third_party/libc++/src/include/__config 2024-01-16 18:43:47.056517289 +0100
+@@ -32,11 +32,7 @@
+
+ // Warn if a compiler version is used that is not supported anymore
+ // LLVM RELEASE Update the minimum compiler versions
+-# if defined(_LIBCPP_CLANG_VER)
+-# if _LIBCPP_CLANG_VER < 1600
+-# warning "Libc++ only supports Clang 16 and later"
+-# endif
+-# elif defined(_LIBCPP_APPLE_CLANG_VER)
++# if defined(_LIBCPP_APPLE_CLANG_VER)
+ # if _LIBCPP_APPLE_CLANG_VER < 1500
+ # warning "Libc++ only supports AppleClang 15 and later"
+ # endif
diff --git a/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch b/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
new file mode 100644
index 0000000000000..0a2ac1de3561d
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc.me chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc
+--- chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc.me 2024-01-23 15:13:11.469104694 +0100
++++ chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc 2024-01-23 15:11:40.117842015 +0100
+@@ -46,7 +46,7 @@ size_t GetResultSizeBytes(const HeaderDi
+
+ } // namespace
+
+-HeaderDirectFromSellerSignals::Result::Result() = default;
++HeaderDirectFromSellerSignals::Result::Result() {}
+
+ HeaderDirectFromSellerSignals::Result::Result(
+ absl::optional<std::string> seller_signals,
--git a/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch b/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
new file mode 100644
index 0000000000000..377de0d1140cb
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
@@ -0,0 +1,459 @@
+diff -up chromium-119.0.6045.105/base/check_op.h.missing-header-files chromium-119.0.6045.105/base/check_op.h
+--- chromium-119.0.6045.105/base/check_op.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/check_op.h 2023-11-06 14:34:01.808868982 +0100
+@@ -5,6 +5,7 @@
+ #ifndef BASE_CHECK_OP_H_
+ #define BASE_CHECK_OP_H_
+
++#include <cstdint>
+ #include <cstddef>
+ #include <string>
+ #include <string_view>
+diff -up chromium-119.0.6045.105/base/containers/flat_map.h.missing-header-files chromium-119.0.6045.105/base/containers/flat_map.h
+--- chromium-119.0.6045.105/base/containers/flat_map.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/containers/flat_map.h 2023-11-06 14:34:01.813869089 +0100
+@@ -5,6 +5,7 @@
+ #ifndef BASE_CONTAINERS_FLAT_MAP_H_
+ #define BASE_CONTAINERS_FLAT_MAP_H_
+
++#include <cstdint>
+ #include <functional>
+ #include <tuple>
+ #include <type_traits>
+diff -up chromium-119.0.6045.105/base/debug/profiler.h.missing-header-files chromium-119.0.6045.105/base/debug/profiler.h
+--- chromium-119.0.6045.105/base/debug/profiler.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/debug/profiler.h 2023-11-06 14:34:01.809869004 +0100
+@@ -8,6 +8,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/base_export.h"
+diff -up chromium-119.0.6045.105/base/memory/ref_counted.h.missing-header-files chromium-119.0.6045.105/base/memory/ref_counted.h
+--- chromium-119.0.6045.105/base/memory/ref_counted.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/memory/ref_counted.h 2023-11-06 14:34:01.808868982 +0100
+@@ -6,6 +6,7 @@
+ #define BASE_MEMORY_REF_COUNTED_H_
+
+ #include <stddef.h>
++#include <limits>
+
+ #include <limits>
+ #include <utility>
+diff -up chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h.missing-header-files chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h
+--- chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h.missing-header-files 2023-11-01 19:10:13.000000000 +0100
++++ chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <map>
+
+ #include "base/containers/flat_set.h"
+diff -up chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h.missing-header-files chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h
+--- chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h.missing-header-files 2023-11-01 19:10:16.000000000 +0100
++++ chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h 2023-11-06 14:34:01.817869174 +0100
+@@ -8,6 +8,7 @@
+ #include <memory>
+ #include <string>
+ #include <vector>
++#include <variant>
+
+ #include "base/containers/span.h"
+ #include "base/functional/callback_forward.h"
+diff -up chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc.missing-header-files chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc
+--- chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc.missing-header-files 2023-11-01 19:10:16.000000000 +0100
++++ chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc 2023-11-06 14:34:01.818869196 +0100
+@@ -11,6 +11,7 @@
+ #include <queue>
+ #include <utility>
+ #include <vector>
++#include <cstring>
+
+ #include "base/check.h"
+ #include "base/files/file_path.h"
+diff -up chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h.missing-header-files chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h
+--- chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h.missing-header-files 2023-11-01 19:10:19.000000000 +0100
++++ chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ class GURL;
+diff -up chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h.missing-header-files chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h
+--- chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h.missing-header-files 2023-11-01 19:10:20.000000000 +0100
++++ chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h 2023-11-06 14:34:01.813869089 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "build/build_config.h"
+diff -up chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h.missing-header-files chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h
+--- chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ namespace feature_engagement {
+diff -up chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h.missing-header-files chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h
+--- chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
+ #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
+
++#include <cstdint>
+ #include <string>
+
+ #include "components/feature_engagement/internal/event_storage_validator.h"
+diff -up chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h.missing-header-files chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h
+--- chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+ #include <utility>
+ #include <vector>
+diff -up chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h.missing-header-files chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h
+--- chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+
+diff -up chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h.missing-header-files chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h
+--- chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h 2023-11-06 14:34:01.815869132 +0100
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
+ #define COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
+
++#include <cstdint>
+ #include <stddef.h>
+ #include <stdint.h>
+
+diff -up chromium-119.0.6045.105/gin/time_clamper.h.missing-header-files chromium-119.0.6045.105/gin/time_clamper.h
+--- chromium-119.0.6045.105/gin/time_clamper.h.missing-header-files 2023-11-01 19:10:28.000000000 +0100
++++ chromium-119.0.6045.105/gin/time_clamper.h 2023-11-06 14:34:01.818869196 +0100
+@@ -48,7 +48,7 @@ class GIN_EXPORT TimeClamper {
+ const int64_t micros = now_micros % 1000;
+ // abs() is necessary for devices with times before unix-epoch (most likely
+ // configured incorrectly).
+- if (abs(micros) + kResolutionMicros < 1000) {
++ if (std::abs(micros) + kResolutionMicros < 1000) {
+ return now_micros / 1000;
+ }
+ return ClampTimeResolution(now_micros) / 1000;
+diff -up chromium-119.0.6045.105/gpu/config/gpu_feature_info.h.missing-header-files chromium-119.0.6045.105/gpu/config/gpu_feature_info.h
+--- chromium-119.0.6045.105/gpu/config/gpu_feature_info.h.missing-header-files 2023-11-01 19:10:28.000000000 +0100
++++ chromium-119.0.6045.105/gpu/config/gpu_feature_info.h 2023-11-06 14:34:01.809869004 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff -up chromium-119.0.6045.105/net/base/net_export.h.missing-header-files chromium-119.0.6045.105/net/base/net_export.h
+--- chromium-119.0.6045.105/net/base/net_export.h.missing-header-files 2023-11-01 19:10:32.000000000 +0100
++++ chromium-119.0.6045.105/net/base/net_export.h 2023-11-06 14:34:01.809869004 +0100
+@@ -5,6 +5,8 @@
+ #ifndef NET_BASE_NET_EXPORT_H_
+ #define NET_BASE_NET_EXPORT_H_
+
++#include <cstdint>
++
+ // Defines NET_EXPORT so that functionality implemented by the net module can
+ // be exported to consumers, and NET_EXPORT_PRIVATE that allows unit tests to
+ // access features not intended to be used directly by real consumers.
+diff -up chromium-119.0.6045.105/pdf/document_attachment_info.h.missing-header-files chromium-119.0.6045.105/pdf/document_attachment_info.h
+--- chromium-119.0.6045.105/pdf/document_attachment_info.h.missing-header-files 2023-11-01 19:10:34.000000000 +0100
++++ chromium-119.0.6045.105/pdf/document_attachment_info.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+
+diff -up chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h.missing-header-files chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h
+--- chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h.missing-header-files 2023-11-01 19:10:34.000000000 +0100
++++ chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h 2023-11-06 14:34:01.809869004 +0100
+@@ -5,6 +5,7 @@
+ #ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+ #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+
++#include <cstdint>
+ #include <bitset>
+ #include <cstdint>
+ #include <string>
+diff -up chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h.missing-header-files chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h
+--- chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h.missing-header-files 2023-11-01 19:10:35.000000000 +0100
++++ chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h 2023-11-06 14:34:01.820869238 +0100
+@@ -8,6 +8,9 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <cstddef>
++#include <cstdint>
++
+ #include <type_traits>
+
+ namespace device {
+diff -up chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc.missing-header-files chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc
+--- chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc.missing-header-files 2023-11-01 19:10:35.000000000 +0100
++++ chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc 2023-11-06 14:34:01.818869196 +0100
+@@ -3,6 +3,7 @@
+ // found in the LICENSE file.
+
+ #include "skia/ext/skcolorspace_trfn.h"
++#include <cmath>
+
+ #include <cmath>
+
+diff -up chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h.missing-header-files chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h
+--- chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h.missing-header-files 2023-11-01 19:10:36.000000000 +0100
++++ chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h 2023-11-06 14:34:01.809869004 +0100
+@@ -27,6 +27,7 @@
+ #ifndef ABSL_STRINGS_STRING_VIEW_H_
+ #define ABSL_STRINGS_STRING_VIEW_H_
+
++#include <cstdint>
+ #include <algorithm>
+ #include <cassert>
+ #include <cstddef>
+diff -up chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h.missing-header-files chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h
+--- chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h.missing-header-files 2023-11-01 19:11:59.000000000 +0100
++++ chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h 2023-11-06 14:34:01.810869025 +0100
+@@ -10,6 +10,7 @@
+ #ifndef GLSLANG_SHADERVARS_H_
+ #define GLSLANG_SHADERVARS_H_
+
++#include <cstdint>
+ #include <algorithm>
+ #include <array>
+ #include <cstdint>
+diff -up chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.missing-header-files chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h
+--- chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.missing-header-files 2023-11-01 19:10:37.000000000 +0100
++++ chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h 2023-11-06 14:34:01.810869025 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <array>
+ #include <cstdint>
+ #include <functional>
+diff -up chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.missing-header-files chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h
+--- chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.missing-header-files 2023-11-01 19:13:50.000000000 +0100
++++ chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h 2023-11-06 14:34:01.810869025 +0100
+@@ -15,6 +15,7 @@
+ #ifndef SRC_TINT_LANG_SPIRV_READER_AST_PARSER_NAMER_H_
+ #define SRC_TINT_LANG_SPIRV_READER_AST_PARSER_NAMER_H_
+
++#include <cstdint>
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h.missing-header-files chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h
+--- chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h.missing-header-files 2023-11-01 19:11:20.000000000 +0100
++++ chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h 2023-11-06 14:34:01.819869217 +0100
+@@ -5,6 +5,7 @@
+ #ifndef IPCZ_SRC_IPCZ_ROUTER_LINK_H_
+ #define IPCZ_SRC_IPCZ_ROUTER_LINK_H_
+
++#include <memory>
+ #include <cstddef>
+ #include <functional>
+ #include <memory>
+diff -up chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc.missing-header-files chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc
+--- chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc.missing-header-files 2023-11-01 19:11:53.000000000 +0100
++++ chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -14,6 +14,7 @@
+ * limitations under the License.
+ */
+
++#include <cmath>
+ #include "cpp/palettes/tones.h"
+
+ #include "cpp/cam/cam.h"
+diff -up chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.missing-header-files chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h
+--- chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.missing-header-files 2023-11-01 19:11:59.000000000 +0100
++++ chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h 2023-11-06 14:34:01.810869025 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <functional>
+ #include <map>
+ #include <set>
+diff -up chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h.missing-header-files chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h
+--- chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h.missing-header-files 2023-11-01 19:14:48.000000000 +0100
++++ chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,8 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
++
+ namespace pdfium {
+ namespace annotation_flags {
+
+diff -up chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h.missing-header-files chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h
+--- chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h.missing-header-files 2023-11-01 19:12:02.000000000 +0100
++++ chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h 2023-11-06 14:34:01.813869089 +0100
+@@ -17,6 +17,7 @@ limitations under the License.
+ #define RUY_RUY_PROFILER_INSTRUMENTATION_H_
+
+ #ifdef RUY_PROFILER
++#include <string>
+ #include <cstdio>
+ #include <mutex>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp.missing-header-files chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp
+--- chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp.missing-header-files 2023-11-01 19:12:15.000000000 +0100
++++ chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp 2023-11-06 14:34:01.810869025 +0100
+@@ -17,6 +17,7 @@
+
+ #include "System/Debug.hpp"
+
++#include <cstdint>
+ #include <cstddef>
+ #include <cstdint>
+ #include <functional>
+diff -up chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.missing-header-files chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc
+--- chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.missing-header-files 2023-11-01 19:12:42.000000000 +0100
++++ chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc 2023-11-06 14:34:01.814869110 +0100
+@@ -45,6 +45,7 @@
+ #include "llvm/Support/SaveAndRestore.h"
+ #include "llvm/Support/raw_ostream.h"
+ #include <algorithm>
++#include <cstdint>
+ #include <string>
+ #include <sysexits.h>
+ #ifdef HAVE_BACKTRACE
+diff -up chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.missing-header-files chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h
+--- chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.missing-header-files 2023-11-01 19:13:20.000000000 +0100
++++ chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h 2023-11-06 14:34:01.813869089 +0100
+@@ -31,6 +31,7 @@ limitations under the License.
+ #ifndef TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
+ #define TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
+
++#include <cstdint>
+ #include <complex>
+ #include <deque>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.missing-header-files chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
+--- chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.missing-header-files 2023-11-01 19:12:45.000000000 +0100
++++ chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h 2023-11-06 14:34:01.817869174 +0100
+@@ -2884,6 +2884,7 @@ static void vma_aligned_free(void* VMA_N
+
+ // Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.
+ #if VMA_STATS_STRING_ENABLED
++#include <stdio.h>
+ static inline void VmaUint32ToStr(char* VMA_NOT_NULL outStr, size_t strLen, uint32_t num)
+ {
+ snprintf(outStr, strLen, "%u", static_cast<unsigned int>(num));
+diff -up chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc.missing-header-files chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc
+--- chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc.missing-header-files 2023-11-01 19:14:05.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -8,6 +8,8 @@
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
++#include <cstring>
++
+ #include "audio/utility/channel_mixer.h"
+
+ #include "audio/utility/channel_mixing_matrix.h"
+diff -up chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h.missing-header-files chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h
+--- chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h.missing-header-files 2023-11-01 19:14:06.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h 2023-11-06 14:34:01.819869217 +0100
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
+ #define COMMON_VIDEO_H264_SPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+ #include "rtc_base/bitstream_reader.h"
+
+diff -up chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h.missing-header-files chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h
+--- chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h.missing-header-files 2023-11-01 19:14:11.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h 2023-11-06 14:34:01.819869217 +0100
+@@ -11,6 +11,7 @@
+ #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+ #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+
++#include <cstdint>
+ #include <limits>
+
+ #include "absl/types/optional.h"
+diff -up chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-header-files chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
+--- chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-header-files 2023-11-01 19:14:12.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -10,6 +10,7 @@
+
+ #include "modules/video_coding/utility/ivf_file_reader.h"
+
++#include <cstring>
+ #include <string>
+ #include <vector>
+
+diff -up chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h.missing-header-files chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h
+--- chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,8 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
++
+ #include "base/component_export.h"
+ #include "ui/gfx/geometry/matrix3_f.h"
+
+diff -up chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h.missing-header-files chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h
+--- chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h 2023-11-06 14:34:01.812869068 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <array>
+ #include <cstddef>
+ #include <cstdint>
+diff -up chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h.missing-header-files chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h
+--- chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h 2023-11-06 14:34:01.819869217 +0100
+@@ -9,6 +9,8 @@
+
+ #include "ui/gfx/buffer_types.h"
+
++#include <cstdint>
++
+ namespace ui {
+
+ int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format);
diff --git a/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch b/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
new file mode 100644
index 0000000000000..61239e7f02276
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn.mnemonic-error chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn
+--- chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn.mnemonic-error 2023-12-19 18:14:43.027723832 +0100
++++ chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn 2023-12-19 18:39:47.492384620 +0100
+@@ -1731,8 +1731,6 @@ action_foreach("element_locator_test_pro
+ python_path_root = "${root_out_dir}/pyproto"
+ python_path_proto = "${python_path_root}/third_party/blink/renderer/core/lcp_critical_path_predictor"
+
+- mnemonic = "ELOC_PROTO"
+-
+ source_dir = "lcp_critical_path_predictor/test_proto"
+ sources = rebase_path([ "lcp_image_id.asciipb" ], "", source_dir)
+ sources += rebase_path([ "lcp_image_id_b.asciipb" ], "", source_dir)
diff --git a/srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch b/srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
similarity index 75%
rename from srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch
rename to srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
index b1d987adeff8d..332a91ad06b3d 100644
--- a/srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch
+++ b/srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
@@ -114,9 +114,9 @@ diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_per
+ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal};
}
- buttons.emplace_back(l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
-- ButtonType::kAllow, ui::ButtonStyle::kTonal);
+- ButtonType::kAllow, ui::ButtonStyle::kTonal, kAllowId);
+ buttons.emplace_back() = {l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
-+ ButtonType::kAllow, ui::ButtonStyle::kTonal};
++ ButtonType::kAllow, ui::ButtonStyle::kTonal, kAllowId};
return buttons;
}
@@ -145,55 +145,6 @@ diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_per
return buttons;
}
-diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.no_matching_constructor chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc
---- chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.no_matching_constructor 2023-11-29 22:39:53.000000000 +0100
-+++ chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc 2023-12-03 17:31:25.756420342 +0100
-@@ -63,18 +63,18 @@ EmbeddedPermissionPromptPreviouslyDenied
- std::vector<EmbeddedPermissionPromptPreviouslyDeniedView::ButtonConfiguration>
- EmbeddedPermissionPromptPreviouslyDeniedView::GetButtonsConfiguration() const {
- std::vector<ButtonConfiguration> buttons;
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_NOT_ALLOWING),
-- ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal};
-
- if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
-- ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal);
-+ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal};
- } else {
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
-- ButtonType::kAllow, ui::ButtonStyle::kTonal);
-+ ButtonType::kAllow, ui::ButtonStyle::kTonal};
- }
- return buttons;
- }
-diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.no_matching_constructor chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc
---- chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.no_matching_constructor 2023-11-29 22:39:53.000000000 +0100
-+++ chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc 2023-12-03 17:31:25.750420227 +0100
-@@ -57,13 +57,13 @@ EmbeddedPermissionPromptPreviouslyGrante
- std::vector<EmbeddedPermissionPromptPreviouslyGrantedView::ButtonConfiguration>
- EmbeddedPermissionPromptPreviouslyGrantedView::GetButtonsConfiguration() const {
- std::vector<ButtonConfiguration> buttons;
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_ALLOWING),
-- ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal};
-
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_STOP_ALLOWING),
-- ButtonType::kStopAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kStopAllowing, ui::ButtonStyle::kTonal};
- return buttons;
- }
-
diff -up chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc.no_matching_constructor chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc
--- chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc.no_matching_constructor 2023-11-29 22:39:54.000000000 +0100
+++ chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc 2023-12-03 17:31:25.750420227 +0100
@@ -246,18 +197,6 @@ diff -up chromium-120.0.6099.56/components/autofill/core/browser/webdata/autofil
if (type == ADDRESS_HOME_COUNTRY) {
country_code = base::UTF16ToUTF8(s.ColumnString16(1));
-diff -up chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc.no_matching_constructor chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc
---- chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc.no_matching_constructor 2023-11-29 22:39:58.000000000 +0100
-+++ chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc 2023-12-03 17:31:25.751420246 +0100
-@@ -630,7 +630,7 @@ void PasswordManager::OnUserModifiedNonP
- // |driver| might be empty on iOS or in tests.
- int driver_id = driver ? driver->GetId() : 0;
- possible_usernames_.Put(
-- PossibleUsernameFieldIdentifier(driver_id, renderer_id),
-+ PossibleUsernameFieldIdentifier{driver_id, renderer_id},
- PossibleUsernameData(GetSignonRealm(driver->GetLastCommittedURL()),
- renderer_id, value, base::Time::Now(), driver_id,
- autocomplete_attribute_has_username, is_likely_otp));
diff -up chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.no_matching_constructor chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc
--- chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.no_matching_constructor 2023-11-29 22:40:01.000000000 +0100
+++ chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc 2023-12-03 17:31:25.751420246 +0100
@@ -300,45 +239,6 @@ diff -up chromium-120.0.6099.56/content/browser/interest_group/interest_group_st
}
if (!interest_group_kanon_query.Succeeded()) {
return absl::nullopt;
-diff -up chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc.no_matching_constructor chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc
---- chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc.no_matching_constructor 2023-11-29 22:40:01.000000000 +0100
-+++ chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc 2023-12-03 20:49:28.059042672 +0100
-@@ -8685,7 +8685,7 @@ void RenderFrameHostImpl::SendFencedFram
- for (const blink::FencedFrame::ReportingDestination& destination :
- destinations) {
- SendFencedFrameReportingBeaconInternal(
-- DestinationEnumEvent(event_type, event_data), destination,
-+ DestinationEnumEvent{event_type, event_data}, destination,
- /*from_renderer=*/true, attribution_reporting_runtime_features);
- }
- }
-@@ -8720,7 +8720,7 @@ void RenderFrameHostImpl::SendFencedFram
- }
-
- SendFencedFrameReportingBeaconInternal(
-- DestinationURLEvent(destination_url),
-+ DestinationURLEvent{destination_url},
- blink::FencedFrame::ReportingDestination::kBuyer,
- /*from_renderer=*/true, attribution_reporting_runtime_features);
- }
-@@ -8820,7 +8820,7 @@ void RenderFrameHostImpl::MaybeSendFence
- data = info->data;
- }
- initiator_rfh->SendFencedFrameReportingBeaconInternal(
-- AutomaticBeaconEvent(event_type, data), destination,
-+ AutomaticBeaconEvent{event_type, data}, destination,
- /*from_renderer=*/false, attribution_reporting_features,
- navigation_request.GetNavigationId());
- }
-@@ -8832,7 +8832,7 @@ void RenderFrameHostImpl::MaybeSendFence
- for (blink::FencedFrame::ReportingDestination destination :
- info->destinations) {
- initiator_rfh->SendFencedFrameReportingBeaconInternal(
-- AutomaticBeaconEvent(event_type, info->data), destination,
-+ AutomaticBeaconEvent{event_type, info->data}, destination,
- /*from_renderer=*/false, info->attribution_reporting_runtime_features,
- navigation_request.GetNavigationId());
- }
diff -up chromium-120.0.6099.56/net/dns/host_resolver_cache.cc.no_matching_constructor chromium-120.0.6099.56/net/dns/host_resolver_cache.cc
--- chromium-120.0.6099.56/net/dns/host_resolver_cache.cc.no_matching_constructor 2023-11-29 22:40:07.000000000 +0100
+++ chromium-120.0.6099.56/net/dns/host_resolver_cache.cc 2023-12-03 17:31:25.754420303 +0100
@@ -740,3 +640,306 @@ diff -up chromium-120.0.6099.56/ui/gtk/gtk_ui.cc.no_matching_constructor chromiu
}
return config;
}
+diff -up chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.than chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc
+--- chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.than 2023-12-19 17:13:15.116949814 +0100
++++ chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc 2023-12-19 17:27:18.807102716 +0100
+@@ -66,17 +66,17 @@ EmbeddedPermissionPromptPreviouslyDenied
+ std::vector<EmbeddedPermissionPromptPreviouslyDeniedView::ButtonConfiguration>
+ EmbeddedPermissionPromptPreviouslyDeniedView::GetButtonsConfiguration() const {
+ std::vector<ButtonConfiguration> buttons;
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_NOT_ALLOWING),
+- ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal);
++ ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal};
+
+ if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
+- ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal, kAllowThisTimeId);
++ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal, kAllowThisTimeId};
+ } else {
+- buttons.emplace_back(l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
+- ButtonType::kAllow, ui::ButtonStyle::kTonal);
++ buttons.emplace_back() = {l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
++ ButtonType::kAllow, ui::ButtonStyle::kTonal};
+ }
+ return buttons;
+ }
+diff -up chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.than chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc
+--- chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.than 2023-12-19 17:39:17.818834020 +0100
++++ chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc 2023-12-19 17:44:15.346337876 +0100
+@@ -61,13 +61,13 @@ EmbeddedPermissionPromptPreviouslyGrante
+ std::vector<EmbeddedPermissionPromptPreviouslyGrantedView::ButtonConfiguration>
+ EmbeddedPermissionPromptPreviouslyGrantedView::GetButtonsConfiguration() const {
+ std::vector<ButtonConfiguration> buttons;
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_ALLOWING),
+- ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal);
++ ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal};
+
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_STOP_ALLOWING),
+- ButtonType::kStopAllowing, ui::ButtonStyle::kTonal, kStopAllowingId);
++ ButtonType::kStopAllowing, ui::ButtonStyle::kTonal, kStopAllowingId};
+ return buttons;
+ }
+
+diff -up chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc.than chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc
+--- chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc.than 2023-12-19 17:39:17.819834039 +0100
++++ chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc 2023-12-19 17:48:33.144389081 +0100
+@@ -666,7 +666,7 @@ void PasswordManager::OnUserModifiedNonP
+ it->second.last_change = base::Time::Now();
+ } else {
+ possible_usernames_.Put(
+- PossibleUsernameFieldIdentifier(driver_id, renderer_id),
++ PossibleUsernameFieldIdentifier{driver_id, renderer_id},
+ PossibleUsernameData(GetSignonRealm(driver->GetLastCommittedURL()),
+ renderer_id, value, base::Time::Now(), driver_id,
+ autocomplete_attribute_has_username,
+diff -up chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc.than chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc
+--- chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc.than 2023-12-19 17:39:17.825834156 +0100
++++ chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc 2023-12-19 17:53:43.153283847 +0100
+@@ -8561,7 +8561,7 @@ void RenderFrameHostImpl::SendFencedFram
+ for (const blink::FencedFrame::ReportingDestination& destination :
+ destinations) {
+ SendFencedFrameReportingBeaconInternal(
+- DestinationEnumEvent(event_type, event_data), destination,
++ DestinationEnumEvent{event_type, event_data}, destination,
+ attribution_reporting_runtime_features);
+ }
+ }
+@@ -8593,7 +8593,7 @@ void RenderFrameHostImpl::SendFencedFram
+ }
+
+ SendFencedFrameReportingBeaconInternal(
+- DestinationURLEvent(destination_url),
++ DestinationURLEvent{destination_url},
+ blink::FencedFrame::ReportingDestination::kBuyer,
+ attribution_reporting_runtime_features);
+ }
+@@ -8730,7 +8730,7 @@ void RenderFrameHostImpl::MaybeSendFence
+ data = info->data;
+ }
+ initiator_rfh->SendFencedFrameReportingBeaconInternal(
+- AutomaticBeaconEvent(event_type, data), destination,
++ AutomaticBeaconEvent{event_type, data}, destination,
+ attribution_reporting_features, navigation_request.GetNavigationId());
+ }
+ } else {
+@@ -8741,7 +8741,7 @@ void RenderFrameHostImpl::MaybeSendFence
+ for (blink::FencedFrame::ReportingDestination destination :
+ info->destinations) {
+ initiator_rfh->SendFencedFrameReportingBeaconInternal(
+- AutomaticBeaconEvent(event_type, info->data), destination,
++ AutomaticBeaconEvent{event_type, info->data}, destination,
+ info->attribution_reporting_runtime_features,
+ navigation_request.GetNavigationId());
+ }
+diff -up chromium-121.0.6167.57/base/nix/mime_util_xdg.cc.me chromium-121.0.6167.57/base/nix/mime_util_xdg.cc
+--- chromium-121.0.6167.57/base/nix/mime_util_xdg.cc.me 2024-01-21 16:54:15.261844448 +0100
++++ chromium-121.0.6167.57/base/nix/mime_util_xdg.cc 2024-01-21 16:55:48.705577424 +0100
+@@ -56,7 +56,7 @@ void LoadAllMimeCacheFiles(MimeTypeMap&
+ for (const auto& path : GetXDGDataSearchLocations(env.get())) {
+ FilePath mime_cache = path.Append("mime/mime.cache");
+ if (GetFileInfo(mime_cache, &info) && ParseMimeTypes(mime_cache, map)) {
+- files.emplace_back(mime_cache, info.last_modified);
++ files.emplace_back() = {mime_cache, info.last_modified};
+ }
+ }
+ }
+diff -up chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc.me chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc
+--- chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc.me 2024-01-21 18:11:31.397859608 +0100
++++ chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc 2024-01-21 18:20:07.715415037 +0100
+@@ -239,7 +239,7 @@ void WorkerWatcher::OnWorkerCreated(
+ DCHECK(insertion_result.second);
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&,
+ this](const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ AddFrameClientConnection(insertion_result.first->second.get(),
+@@ -248,7 +248,7 @@ void WorkerWatcher::OnWorkerCreated(
+ [&, this](blink::DedicatedWorkerToken dedicated_worker_token) {
+ ConnectDedicatedWorkerClient(insertion_result.first->second.get(),
+ dedicated_worker_token);
+- }),
++ }},
+ creator);
+ }
+
+@@ -265,7 +265,7 @@ void WorkerWatcher::OnBeforeWorkerDestro
+ // First disconnect the creator's node from this worker node.
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&,
+ this](const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ RemoveFrameClientConnection(worker_node.get(),
+@@ -274,7 +274,7 @@ void WorkerWatcher::OnBeforeWorkerDestro
+ [&, this](blink::DedicatedWorkerToken dedicated_worker_token) {
+ DisconnectDedicatedWorkerClient(worker_node.get(),
+ dedicated_worker_token);
+- }),
++ }},
+ creator);
+
+ // Disconnect all child workers before destroying the node.
+@@ -446,7 +446,7 @@ void WorkerWatcher::OnControlleeAdded(
+ const std::string& client_uuid,
+ const content::ServiceWorkerClientInfo& client_info) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ // For window clients, it is necessary to wait until the navigation
+ // has committed to a RenderFrameHost.
+@@ -484,7 +484,7 @@ void WorkerWatcher::OnControlleeAdded(
+ ConnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+ }
+- }),
++ }},
+ client_info);
+ }
+
+@@ -524,7 +524,7 @@ void WorkerWatcher::OnControlleeRemoved(
+ return;
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ RemoveFrameClientConnection(worker_node, render_frame_host_id);
+ },
+@@ -534,7 +534,7 @@ void WorkerWatcher::OnControlleeRemoved(
+ },
+ [&, this](blink::SharedWorkerToken shared_worker_token) {
+ DisconnectSharedWorkerClient(worker_node, shared_worker_token);
+- }),
++ }},
+ client);
+ }
+
+@@ -810,7 +810,7 @@ void WorkerWatcher::ConnectAllServiceWor
+
+ for (const auto& kv : it->second) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ AddFrameClientConnection(service_worker_node,
+ render_frame_host_id);
+@@ -822,7 +822,7 @@ void WorkerWatcher::ConnectAllServiceWor
+ [&, this](blink::SharedWorkerToken shared_worker_token) {
+ ConnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+- }),
++ }},
+ kv.second);
+ }
+ }
+@@ -837,7 +837,7 @@ void WorkerWatcher::DisconnectAllService
+
+ for (const auto& kv : it->second) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](
+ const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ RemoveFrameClientConnection(service_worker_node,
+@@ -851,7 +851,7 @@ void WorkerWatcher::DisconnectAllService
+ [&, this](const blink::SharedWorkerToken& shared_worker_token) {
+ DisconnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+- }),
++ }},
+ kv.second);
+ }
+ }
+diff -up chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc.me chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc
+--- chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc.me 2024-01-21 18:40:52.284389286 +0100
++++ chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc 2024-01-21 18:41:17.276840222 +0100
+@@ -764,7 +764,7 @@ FirstPartySetParser::ParseSetsFromEnterp
+ context.GetPolicySetsFromList(
+ policy.FindList(kFirstPartySetPolicyAdditionsField),
+ PolicySetType::kAddition));
+- return ParsedPolicySetLists(std::move(replacements), std::move(additions));
++ return ParsedPolicySetLists{std::move(replacements), std::move(additions)};
+ }();
+
+ context.PostProcessSetLists(set_lists);
+diff -up chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h.me chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h
+--- chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h.me 2024-01-21 19:30:00.536387844 +0100
++++ chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h 2024-01-21 20:29:50.236287514 +0100
+@@ -133,6 +133,7 @@ class CONTENT_EXPORT HeaderDirectFromSel
+
+ // The Ad-Auction-Signals response served by `origin`.
+ std::string response_json;
++ UnprocessedResponse(auto u, auto s) : origin(u), response_json(s) { }
+ };
+
+ // Information from ParseAndFind() calls used by ParseAndFindCompleted.
+diff -up chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc.me chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc
+--- chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc.me 2024-01-21 21:58:48.773366301 +0100
++++ chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc 2024-01-21 22:02:17.956086167 +0100
+@@ -360,10 +360,10 @@ ServiceWorkerMainResourceLoaderIntercept
+ }
+ auto* storage_partition = process->GetStoragePartition();
+
+- return absl::visit(base::Overloaded([&, this](auto token) {
++ return absl::visit(base::Overloaded{[&, this](auto token) {
+ return GetStorageKeyFromWorkerHost(storage_partition,
+ token, origin);
+- }),
++ }},
+ *worker_token_);
+ }
+
+diff -up chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc.me chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc
+--- chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc.me 2024-01-21 22:04:30.446454697 +0100
++++ chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc 2024-01-21 22:05:22.847391481 +0100
+@@ -870,7 +870,7 @@ ServiceWorkerContainerHost::GetClientTyp
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+ DCHECK(client_info_);
+ return absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [](GlobalRenderFrameHostId render_frame_host_id) {
+ return blink::mojom::ServiceWorkerClientType::kWindow;
+ },
+@@ -879,7 +879,7 @@ ServiceWorkerContainerHost::GetClientTyp
+ },
+ [](blink::SharedWorkerToken shared_worker_token) {
+ return blink::mojom::ServiceWorkerClientType::kSharedWorker;
+- }),
++ }},
+ *client_info_);
+ }
+
+diff -up chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc.me chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc
+--- chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc.me 2024-01-21 22:37:00.969416148 +0100
++++ chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc 2024-01-21 22:38:07.754528335 +0100
+@@ -251,7 +251,7 @@ void DedicatedWorkerHost::StartScriptLoa
+ RenderFrameHostImpl* creator_render_frame_host = nullptr;
+ DedicatedWorkerHost* creator_worker = nullptr;
+
+- absl::visit(base::Overloaded(
++ absl::visit(base::Overloaded{
+ [&](const GlobalRenderFrameHostId& render_frame_host_id) {
+ creator_render_frame_host =
+ RenderFrameHostImpl::FromID(render_frame_host_id);
+@@ -259,7 +259,7 @@ void DedicatedWorkerHost::StartScriptLoa
+ [&](blink::DedicatedWorkerToken dedicated_worker_token) {
+ creator_worker = service_->GetDedicatedWorkerHostFromToken(
+ dedicated_worker_token);
+- }),
++ }},
+ creator_);
+
+ if (!creator_render_frame_host && !creator_worker) {
diff --git a/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch b/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
new file mode 100644
index 0000000000000..3defc393c084f
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
@@ -0,0 +1,12 @@
+diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h.than chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h
+--- chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h.than 2023-12-04 10:20:45.350540897 +0100
++++ chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h 2023-12-04 10:23:17.335339670 +0100
+@@ -21,7 +21,7 @@ class FragmentDataIteratorBase {
+
+ public:
+ explicit FragmentDataIteratorBase(Head& head) : fragment_head_(head) {}
+- explicit FragmentDataIteratorBase(nullptr_t) {}
++ explicit FragmentDataIteratorBase(std::nullptr_t) {}
+
+ Data* GetFragmentData() const {
+ return !IsDone() ? &fragment_head_.at(idx_) : nullptr;
diff --git a/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch b/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
new file mode 100644
index 0000000000000..c2bf5b489f7a1
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
@@ -0,0 +1,77 @@
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py.me 2024-01-15 20:48:28.177397102 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py 2024-01-15 20:48:46.427768328 +0100
+@@ -18,7 +18,7 @@ class HTMLGenerationController(object):
+
+ def GetHTMLForInlineStylesheet(self, contents):
+ if self.current_module is None:
+- if re.search('url\(.+\)', contents):
++ if re.search(r'url\(.+\)', contents):
+ raise Exception(
+ 'Default HTMLGenerationController cannot handle inline style urls')
+ return contents
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py.me 2024-01-15 20:49:39.363845083 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py 2024-01-15 20:49:57.407212098 +0100
+@@ -4,4 +4,4 @@
+
+
+ def EscapeJSIfNeeded(js):
+- return js.replace('</script>', '<\/script>')
++ return js.replace(r'</script>', r'<\/script>')
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py.me 2024-01-15 20:50:11.819505254 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py 2024-01-15 20:50:38.611050213 +0100
+@@ -293,6 +293,6 @@ class HTMLModuleParser():
+ html = ''
+ else:
+ if html.find('< /script>') != -1:
+- raise Exception('Escape script tags with <\/script>')
++ raise Exception(r'Escape script tags with <\/script>')
+
+ return HTMLModuleParserResults(html)
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py.me 2024-01-15 20:48:59.917042709 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py 2024-01-15 20:49:24.402540761 +0100
+@@ -60,7 +60,7 @@ class ParsedStyleSheet(object):
+ return 'url(data:image/%s;base64,%s)' % (ext[1:], data.decode('utf-8'))
+
+ # I'm assuming we only have url()'s associated with images
+- return re.sub('url\((?P<quote>"|\'|)(?P<url>[^"\'()]*)(?P=quote)\)',
++ return re.sub(r'url\((?P<quote>"|\'|)(?P<url>[^"\'()]*)(?P=quote)\)',
+ InlineUrl, self.contents)
+
+ def AppendDirectlyDependentFilenamesTo(self, dependent_filenames):
+@@ -72,7 +72,7 @@ class ParsedStyleSheet(object):
+ raise Exception('@imports are not supported')
+
+ matches = re.findall(
+- 'url\((?:["|\']?)([^"\'()]*)(?:["|\']?)\)',
++ r'url\((?:["|\']?)([^"\'()]*)(?:["|\']?)\)',
+ self.contents)
+
+ def resolve_url(url):
+diff -up chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py.me chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py
+--- chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py.me 2024-01-15 20:50:56.810420400 +0100
++++ chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py 2024-01-15 20:52:33.506387261 +0100
+@@ -28,7 +28,7 @@ import platform
+ import sys
+
+ def glob_slash(dirname):
+- """Like regular glob but replaces \ with / in returned paths."""
++ """Like regular glob but replaces \\ with / in returned paths."""
+ return [s.replace('\\', '/') for s in glob.glob(dirname)]
+
+ def main():
+diff -up chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py.me chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py
+--- chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py.me 2024-01-15 20:52:38.016479000 +0100
++++ chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py 2024-01-15 20:52:48.863699640 +0100
+@@ -28,7 +28,7 @@ import platform
+ import sys
+
+ def glob_slash(dirname):
+- """Like regular glob but replaces \ with / in returned paths."""
++ """Like regular glob but replaces \\ with / in returned paths."""
+ return [s.replace('\\', '/') for s in glob.glob(dirname)]
+
+ def main():
diff --git a/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch b/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
new file mode 100644
index 0000000000000..4014f9a827648
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
@@ -0,0 +1,22 @@
+--- a/build/config/clang/BUILD.gn
++++ b/build/config/clang/BUILD.gn
+@@ -128,14 +128,15 @@
+ } else if (is_apple) {
+ _dir = "darwin"
+ } else if (is_linux || is_chromeos) {
++ _dir = "linux"
+ if (current_cpu == "x64") {
+- _dir = "x86_64-unknown-linux-gnu"
++ _suffix = "-x86_64"
+ } else if (current_cpu == "x86") {
+- _dir = "i386-unknown-linux-gnu"
++ _suffix = "-i386"
+ } else if (current_cpu == "arm") {
+- _dir = "armv7-unknown-linux-gnueabihf"
++ _suffix = "-armhf"
+ } else if (current_cpu == "arm64") {
+- _dir = "aarch64-unknown-linux-gnu"
++ _suffix = "-aarch64"
+ } else {
+ assert(false) # Unhandled cpu type
+ }
diff --git a/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch b/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
new file mode 100644
index 0000000000000..25c3422982933
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
@@ -0,0 +1,10 @@
+--- a/build/rust/std/BUILD.gn
++++ b/build/rust/std/BUILD.gn
+@@ -100,7 +100,6 @@
+ # don't need to pass to the C++ linker because they're used for specialized
+ # purposes.
+ skip_stdlib_files = [
+- "profiler_builtins",
+ "rustc_std_workspace_alloc",
+ "rustc_std_workspace_core",
+ "rustc_std_workspace_std",
diff --git a/srcpkgs/chromium/patches/chromium-120-typename.patch b/srcpkgs/chromium/patches/chromium-121-typename.patch
similarity index 78%
rename from srcpkgs/chromium/patches/chromium-120-typename.patch
rename to srcpkgs/chromium/patches/chromium-121-typename.patch
index 9a2d878b12b54..e83e62c60a54e 100644
--- a/srcpkgs/chromium/patches/chromium-120-typename.patch
+++ b/srcpkgs/chromium/patches/chromium-121-typename.patch
@@ -203,3 +203,57 @@ diff -up chromium-120.0.6099.56/third_party/blink/renderer/bindings/core/v8/asyn
ExceptionState& exception_state) = 0;
};
+diff -up chromium-121.0.6167.57/base/functional/bind_internal.h.me chromium-121.0.6167.57/base/functional/bind_internal.h
+--- chromium-121.0.6167.57/base/functional/bind_internal.h.me 2024-01-21 16:10:09.809037581 +0100
++++ chromium-121.0.6167.57/base/functional/bind_internal.h 2024-01-21 16:46:33.759397303 +0100
+@@ -1533,11 +1533,11 @@ template <int i,
+ typename Param>
+ struct ParamCanBeBound {
+ private:
+- using UnwrappedParam = BindArgument<i>::template ForwardedAs<
++ using UnwrappedParam = typename BindArgument<i>::template ForwardedAs<
+ Unwrapped>::template ToParamWithType<Param>;
+- using ParamStorage = BindArgument<i>::template ToParamWithType<
++ using ParamStorage = typename BindArgument<i>::template ToParamWithType<
+ Param>::template StoredAs<Storage>;
+- using BoundStorage =
++ using BoundStorage = typename
+ BindArgument<i>::template BoundAs<Arg>::template StoredAs<Storage>;
+
+ // We forbid callbacks from using raw_ptr as a parameter. However, we allow
+diff -up chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h
+--- chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me 2024-01-21 17:23:37.786606428 +0100
++++ chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h 2024-01-21 17:23:58.582127103 +0100
+@@ -90,7 +90,7 @@ template <typename Container>
+ { c[i] } -> std::same_as<typename Container::reference>;
+ }
+ struct ArrayTraits<Container> {
+- using Element = Container::value_type;
++ using Element = typename Container::value_type;
+
+ // vector-like containers have no built-in null.
+ static bool IsNull(const Container& c) { return false; }
+diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h
+--- chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me 2024-01-21 17:33:40.030897838 +0100
++++ chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h 2024-01-21 17:34:11.518705266 +0100
+@@ -25,7 +25,7 @@ void SetExecutionRequestTemplate(
+
+ // Request is set by the feature and should always be typed.
+ auto typed_request =
+- static_cast<const FeatureType::Request&>(request_metadata);
++ static_cast<const typename FeatureType::Request&>(request_metadata);
+ *(logging_data->mutable_request_data()) = typed_request;
+ }
+
+diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h
+--- chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me 2024-01-21 17:32:42.367417619 +0100
++++ chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h 2024-01-21 17:33:25.732531198 +0100
+@@ -29,7 +29,7 @@ class ModelQualityLogEntry {
+ }
+
+ template <typename FeatureType>
+- FeatureType::Quality* quality_data() {
++ typename FeatureType::Quality* quality_data() {
+ return FeatureType::GetLoggingData(*log_ai_data_request_)
+ ->mutable_quality_data();
+ }
diff --git a/srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch b/srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
similarity index 75%
rename from srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch
rename to srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
index b06e29f29047a..192b0692fbf73 100644
--- a/srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch
+++ b/srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
@@ -25,27 +25,29 @@ diff -up chromium-115.0.5790.32/content/browser/service_worker/service_worker_co
DCHECK(document_url.is_valid());
TRACE_EVENT1("ServiceWorker",
-diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc
---- chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me 2023-12-03 22:17:50.922083200 +0100
-+++ chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-03 22:22:55.437484343 +0100
-@@ -3447,7 +3447,8 @@ void GridLayoutAlgorithm::PlaceGridItems
+diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc
+--- chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than 2023-12-19 17:57:56.205197246 +0100
++++ chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-19 18:10:13.778634531 +0100
+@@ -3527,8 +3527,8 @@ void GridLayoutAlgorithm::PlaceGridItems
DCHECK(out_row_break_between);
- const auto& container_space = ConstraintSpace();
+ const auto& container_space = GetConstraintSpace();
- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData();
+-
+ const auto& [grid_items, l_d, tree_size] = sizing_tree.TreeRootData();
+ const auto& layout_data = l_d;
-
const auto* cached_layout_subtree = container_space.GetGridLayoutSubtree();
const auto container_writing_direction =
-@@ -3611,7 +3612,9 @@ void GridLayoutAlgorithm::PlaceGridItems
+ container_space.GetWritingDirection();
+@@ -3691,8 +3691,9 @@ void GridLayoutAlgorithm::PlaceGridItems
// TODO(ikilpatrick): Update |SetHasSeenAllChildren| and early exit if true.
- const auto& constraint_space = ConstraintSpace();
+ const auto& constraint_space = GetConstraintSpace();
- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData();
+-
+ const auto& [g_i, l_d, tree_size] = sizing_tree.TreeRootData();
+ const auto& grid_items = g_i;
+ const auto& layout_data = l_d;
-
const auto* cached_layout_subtree = constraint_space.GetGridLayoutSubtree();
const auto container_writing_direction =
+ constraint_space.GetWritingDirection();
diff --git a/srcpkgs/chromium/patches/gcc13-wnoerror.patch b/srcpkgs/chromium/patches/gcc13-wnoerror.patch
deleted file mode 100644
index c069aa41b2d09..0000000000000
--- a/srcpkgs/chromium/patches/gcc13-wnoerror.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-https://gn.googlesource.com/gn/+/c7b223bfb225ce87a72a244d016ffdfcf227fa5e%5E%21/
-Ignore build warning -Werror=redundant-move
-
-gcc-13 complains with:
-error: redundant move in return statement [-Werror=redundant-move]
-
-We cannot fix the code, because both old versions of gcc and the windows
-toolchain fails to build.
-index adb622a..232e536 100755
---- a/tools/gn/build/gen.py
-+++ b/tools/gn/build/gen.py
-
-@@ -472,6 +472,8 @@
- # flags not supported by gcc/g++.
- if cxx == 'clang++':
- cflags.extend(['-Wrange-loop-analysis', '-Wextra-semi-stmt'])
-+ else:
-+ cflags.append('-Wno-redundant-move')
-
- if platform.is_linux() or platform.is_mingw() or platform.is_msys():
- ldflags.append('-Wl,--as-needed')
diff --git a/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch b/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
deleted file mode 100644
index dae1adde0bc66..0000000000000
--- a/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/build/linux/unbundle/ffmpeg.gn b/build/linux/unbundle/ffmpeg.gn
-index 16e20744706..6a079b32221 100644
---- a/build/linux/unbundle/ffmpeg.gn
-+++ b/build/linux/unbundle/ffmpeg.gn
-@@ -12,6 +12,7 @@ pkg_config("system_ffmpeg") {
- "libavformat",
- "libavutil",
- ]
-+ defines = [ "av_stream_get_first_dts(stream)=stream->first_dts" ]
- }
-
- buildflag_header("ffmpeg_features") {
diff --git a/srcpkgs/chromium/template b/srcpkgs/chromium/template
index 5613fa3813822..995c194d17f6b 100644
--- a/srcpkgs/chromium/template
+++ b/srcpkgs/chromium/template
@@ -1,15 +1,15 @@
# Template file for 'chromium'
pkgname=chromium
# See https://chromiumdash.appspot.com/releases?platform=Linux for the latest version
-version=120.0.6099.129
+version=121.0.6167.160
revision=1
archs="i686* x86_64* aarch64* armv7l*"
hostmakedepends="
- $(vopt_if clang "clang lld llvm15")
+ $(vopt_if clang "clang17 lld17 llvm15")
bison git gperf hwids ninja nodejs perl pkg-config python3
- libepoxy-devel libevent-devel libglib-devel"
+ libepoxy-devel libevent-devel libglib-devel rust"
makedepends="
- alsa-lib-devel libdav1d-devel brotli-devel cups-devel elfutils-devel ffmpeg-devel
+ alsa-lib-devel libdav1d-devel brotli-devel cups-devel elfutils-devel
fontconfig-devel freetype-devel gtk+3-devel libXScrnSaver-devel
libXcomposite-devel libXcursor-devel libXdamage-devel libXi-devel libXrandr-devel
libavif-devel libcap-devel libcurl-devel libdrm-devel libevent-devel
@@ -18,6 +18,7 @@ makedepends="
libxslt-devel minizip-devel mit-krb5-devel nss-devel opus-devel
pciutils-devel snappy-devel speech-dispatcher-devel speex-devel
xcb-proto zlib-devel libaom-devel libffi-devel libevdev-devel
+ compiler-rt
$(vopt_if pipewire pipewire-devel)
$(vopt_if pulseaudio pulseaudio-devel)
$(vopt_if sndio sndio-devel)"
@@ -27,7 +28,7 @@ maintainer="Duncaen <duncaen@voidlinux.org>"
license="BSD-3-Clause"
homepage="https://www.chromium.org/"
distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/${pkgname}-${version}.tar.xz"
-checksum=be36d5abecfafdc68d9b27b0bee65136316610a295e844b99483a7520b245f85
+checksum=4586673899383d30e9d95fa3a9c5f8160f32a9d5789e40be82abf3e4dd9cc3df
lib32disabled=yes
@@ -50,7 +51,7 @@ if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" libX11-devel libxcb-devel pciutils-devel libXext-devel libglvnd-devel
libjpeg-turbo-devel libXi-devel nss-devel libpng-devel libwebp-devel
libxml2-devel $(vopt_if pulseaudio pulseaudio-devel) libxslt-devel libxkbcommon-devel
- $(vopt_if pipewire pipewire-devel) ffmpeg-devel opus-devel pango-devel libva-devel
+ $(vopt_if pipewire pipewire-devel) opus-devel pango-devel libva-devel
libcurl-devel snappy-devel libXrandr-devel libXcomposite-devel cups-devel
mit-krb5-devel alsa-lib-devel libXdamage-devel libepoxy-devel libevdev-devel
libavif-devel libaom-devel libdav1d-devel libflac-devel
@@ -133,7 +134,7 @@ _setup_toolchain() {
}
do_configure() {
- local system="" conf=()
+ local system=() conf=()
# compile gn early, so it can be used to generate gni stuff
AR="ar" CC=$CC_FOR_BUILD CXX=$CXX_FOR_BUILD LD=$CXX_FOR_BUILD \
@@ -153,8 +154,9 @@ do_configure() {
# XXX: harfbuzz-ng use builtin one until system-wide is updated >=3.0.0
# libcxx https://github.com/llvm/llvm-project/issues/61705:
# snappy
- system="
- ffmpeg
+ # ffmpeg: system ffmpeg is too old and makes the ffmpeg update not require
+ # rebuilding chromium
+ system=(
flac
fontconfig
freetype
@@ -166,12 +168,12 @@ do_configure() {
libxml
libxslt
opus
- "
+ )
# remove build scripts for system provided dependencies - basically does the
# same as the bundeled script to remove bundeled libs, but this way we don't
# have to list the remaining libs
- for LIB in ${system} libjpeg_turbo; do
+ for LIB in "${system[@]}" libjpeg_turbo; do
find "third_party/$LIB" -type f \
\! -path "third_party/$LIB/chromium/*" \
\! -path "third_party/$LIB/google/*" \
@@ -182,13 +184,13 @@ do_configure() {
done
# switch to system provided dependencies
- build/linux/unbundle/replace_gn_files.py --system-libraries ${system}
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${system[@]}"
third_party/libaddressinput/chromium/tools/update-strings.py
+ local clang_version="$(clang -dumpversion)"
conf=(
'enable_nacl=false'
- 'enable_rust=false'
'use_sysroot=false'
@@ -198,12 +200,15 @@ do_configure() {
"use_lld=$(vopt_if clang true false)"
'clang_use_chrome_plugins=false'
'clang_base_path="/usr"'
+ "clang_version=\"${clang_version%%.*}\""
"gold_path=\"${XBPS_CROSS_BASE}/usr/bin/ld.gold\""
"use_custom_libcxx=$(vopt_if libcxx true false)" # https://github.com/llvm/llvm-project/issues/61705
'use_gold=false'
+ 'enable_rust=true'
'rust_sysroot_absolute="/usr"'
+ "rustc_version=\"$(rustc --version)\""
# is_debug makes the build a debug build, changes some things.
# might be useful for real debugging vs just debug symbols.
@@ -293,6 +298,9 @@ do_configure() {
}
do_build() {
+ # XXX: need for error: the option `Z` is only accepted on the nightly compiler
+ export RUSTC_BOOTSTRAP=1
+
_setup_toolchain
CCACHE_SLOPPINESS=include_file_mtime ninja -C out/Release ${makejobs} chrome chromedriver.unstripped chrome_crashpad_handler
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PR PATCH] [Updated] chromium: update to 121.0.6167.85.
2024-01-25 15:39 [PR PATCH] chromium: update to 121.0.6167.85 Duncaen
2024-02-10 23:38 ` [PR PATCH] [Updated] " Duncaen
@ 2024-02-11 1:46 ` Duncaen
2024-02-12 0:49 ` Duncaen
2024-02-12 0:50 ` [PR PATCH] [Closed]: " Duncaen
3 siblings, 0 replies; 5+ messages in thread
From: Duncaen @ 2024-02-11 1:46 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 411 bytes --]
There is an updated pull request by Duncaen against master on the void-packages repository
https://github.com/Duncaen/void-packages chromium-121
https://github.com/void-linux/void-packages/pull/48367
chromium: update to 121.0.6167.85.
[ci skip]
* [ ] x86_64-glibc
* [ ] x86_64-musl
* [ ] aarch64-musl
* [ ] i686
A patch file from https://github.com/void-linux/void-packages/pull/48367.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-chromium-121-48367.patch --]
[-- Type: text/x-diff, Size: 134677 bytes --]
From a9894c9e3bd8e2cbbcf37c6610b0023d183bbb80 Mon Sep 17 00:00:00 2001
From: Duncaen <duncaen@voidlinux.org>
Date: Thu, 25 Jan 2024 16:07:07 +0100
Subject: [PATCH] chromium: update to 121.0.6167.85.
---
...ERT-roll-src-third_party-ffmpeg-m102.patch | 333 -------------
...oll-src-third_party-ffmpeg-m102.patch.args | 1 -
...ERT-roll-src-third_party-ffmpeg-m106.patch | 55 ---
...oll-src-third_party-ffmpeg-m106.patch.args | 1 -
.../patches/chromium-119-ffmpeg-4.4.patch | 20 -
.../chromium-120-arm64-memory_tagging.patch | 14 -
...romium-120-el7-clang-version-warning.patch | 16 -
.../chromium-120-gn-workaround-atspi.patch | 13 -
| 459 ------------------
.../chromium-121-arm64-memory_tagging.patch | 13 +
.../patches/chromium-121-constexpr.patch | 12 +
...romium-121-el7-clang-version-warning.patch | 15 +
...onstructor-involving-anonymous-union.patch | 12 +
| 459 ++++++++++++++++++
.../patches/chromium-121-mnemonic-error.patch | 12 +
...hromium-121-no_matching_constructor.patch} | 407 ++++++++++++----
...-121-nullptr_t-without-namespace-std.patch | 12 +
...-121-python3-invalid-escape-sequence.patch | 77 +++
.../patches/chromium-121-rust-clang_lib.patch | 22 +
...m-121-rust-without-profiler_builtins.patch | 10 +
.../patches/chromium-121-system-libxml.patch | 24 +
...name.patch => chromium-121-typename.patch} | 54 +++
...around_clang_bug-structured_binding.patch} | 20 +-
srcpkgs/chromium/patches/gcc13-wnoerror.patch | 21 -
...undle-ffmpeg-av_stream_get_first_dts.patch | 12 -
srcpkgs/chromium/template | 34 +-
26 files changed, 1059 insertions(+), 1069 deletions(-)
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
delete mode 100644 srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-constexpr.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
rename srcpkgs/chromium/patches/{chromium-120-no_matching_constructor.patch => chromium-121-no_matching_constructor.patch} (75%)
create mode 100644 srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-system-libxml.patch
rename srcpkgs/chromium/patches/{chromium-120-typename.patch => chromium-121-typename.patch} (78%)
rename srcpkgs/chromium/patches/{chromium-120-workaround_clang_bug-structured_binding.patch => chromium-121-workaround_clang_bug-structured_binding.patch} (75%)
delete mode 100644 srcpkgs/chromium/patches/gcc13-wnoerror.patch
delete mode 100644 srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
deleted file mode 100644
index e739b40a2733c..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
+++ /dev/null
@@ -1,333 +0,0 @@
-From 6e554a30893150793c2638e3689cf208ffc8e375 Mon Sep 17 00:00:00 2001
-From: Dale Curtis <dalecurtis@chromium.org>
-Date: Sat, 2 Apr 2022 05:13:53 +0000
-Subject: [PATCH] Roll src/third_party/ffmpeg/ 574c39cce..32b2d1d526 (1125
- commits)
-
-https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/574c39cce323..32b2d1d526
-
-Created with:
- roll-dep src/third_party/ffmpeg
-
-Fixed: 1293918
-Cq-Include-Trybots: luci.chromium.try:mac_chromium_asan_rel_ng,linux_chromium_asan_rel_ng,linux_chromium_chromeos_asan_rel_ng
-Change-Id: I41945d0f963e3d1f65940067bac22f63b68e37d2
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3565647
-Auto-Submit: Dale Curtis <dalecurtis@chromium.org>
-Reviewed-by: Dan Sanders <sandersd@chromium.org>
-Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#988253}
----
- .../clear_key_cdm/ffmpeg_cdm_audio_decoder.cc | 29 ++++++++++---------
- media/ffmpeg/ffmpeg_common.cc | 11 +++----
- media/filters/audio_file_reader.cc | 9 +++---
- media/filters/audio_file_reader_unittest.cc | 6 ++--
- .../filters/audio_video_metadata_extractor.cc | 11 +++++--
- .../filters/ffmpeg_aac_bitstream_converter.cc | 7 +++--
- ...ffmpeg_aac_bitstream_converter_unittest.cc | 2 +-
- media/filters/ffmpeg_audio_decoder.cc | 13 +++++----
- 8 files changed, 51 insertions(+), 37 deletions(-)
-
-diff --git a/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc b/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-index e4fc3f460e2..9b1ad9f7675 100644
---- a/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-+++ b/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-@@ -74,7 +74,7 @@ void CdmAudioDecoderConfigToAVCodecContext(
- codec_context->sample_fmt = AV_SAMPLE_FMT_NONE;
- }
-
-- codec_context->channels = config.channel_count;
-+ codec_context->ch_layout.nb_channels = config.channel_count;
- codec_context->sample_rate = config.samples_per_second;
-
- if (config.extra_data) {
-@@ -124,8 +124,8 @@ void CopySamples(cdm::AudioFormat cdm_format,
- case cdm::kAudioFormatPlanarS16:
- case cdm::kAudioFormatPlanarF32: {
- const int decoded_size_per_channel =
-- decoded_audio_size / av_frame.channels;
-- for (int i = 0; i < av_frame.channels; ++i) {
-+ decoded_audio_size / av_frame.ch_layout.nb_channels;
-+ for (int i = 0; i < av_frame.ch_layout.nb_channels; ++i) {
- memcpy(output_buffer, av_frame.extended_data[i],
- decoded_size_per_channel);
- output_buffer += decoded_size_per_channel;
-@@ -185,13 +185,14 @@ bool FFmpegCdmAudioDecoder::Initialize(
- // Success!
- decoding_loop_ = std::make_unique<FFmpegDecodingLoop>(codec_context_.get());
- samples_per_second_ = config.samples_per_second;
-- bytes_per_frame_ = codec_context_->channels * config.bits_per_channel / 8;
-+ bytes_per_frame_ =
-+ codec_context_->ch_layout.nb_channels * config.bits_per_channel / 8;
- output_timestamp_helper_ =
- std::make_unique<AudioTimestampHelper>(config.samples_per_second);
- is_initialized_ = true;
-
- // Store initial values to guard against midstream configuration changes.
-- channels_ = codec_context_->channels;
-+ channels_ = codec_context_->ch_layout.nb_channels;
- av_sample_format_ = codec_context_->sample_fmt;
-
- return true;
-@@ -291,17 +292,19 @@ cdm::Status FFmpegCdmAudioDecoder::DecodeBuffer(
- for (auto& frame : audio_frames) {
- int decoded_audio_size = 0;
- if (frame->sample_rate != samples_per_second_ ||
-- frame->channels != channels_ || frame->format != av_sample_format_) {
-+ frame->ch_layout.nb_channels != channels_ ||
-+ frame->format != av_sample_format_) {
- DLOG(ERROR) << "Unsupported midstream configuration change!"
- << " Sample Rate: " << frame->sample_rate << " vs "
-- << samples_per_second_ << ", Channels: " << frame->channels
-- << " vs " << channels_ << ", Sample Format: " << frame->format
-- << " vs " << av_sample_format_;
-+ << samples_per_second_
-+ << ", Channels: " << frame->ch_layout.nb_channels << " vs "
-+ << channels_ << ", Sample Format: " << frame->format << " vs "
-+ << av_sample_format_;
- return cdm::kDecodeError;
- }
-
- decoded_audio_size = av_samples_get_buffer_size(
-- nullptr, codec_context_->channels, frame->nb_samples,
-+ nullptr, codec_context_->ch_layout.nb_channels, frame->nb_samples,
- codec_context_->sample_fmt, 1);
- if (!decoded_audio_size)
- continue;
-@@ -320,9 +323,9 @@ bool FFmpegCdmAudioDecoder::OnNewFrame(
- size_t* total_size,
- std::vector<std::unique_ptr<AVFrame, ScopedPtrAVFreeFrame>>* audio_frames,
- AVFrame* frame) {
-- *total_size += av_samples_get_buffer_size(nullptr, codec_context_->channels,
-- frame->nb_samples,
-- codec_context_->sample_fmt, 1);
-+ *total_size += av_samples_get_buffer_size(
-+ nullptr, codec_context_->ch_layout.nb_channels, frame->nb_samples,
-+ codec_context_->sample_fmt, 1);
- audio_frames->emplace_back(av_frame_clone(frame));
- return true;
- }
-diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc
-index 87ca8969626..76f03d6608e 100644
---- a/media/ffmpeg/ffmpeg_common.cc
-+++ b/media/ffmpeg/ffmpeg_common.cc
-@@ -345,10 +345,11 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
- codec_context->sample_fmt, codec_context->codec_id);
-
- ChannelLayout channel_layout =
-- codec_context->channels > 8
-+ codec_context->ch_layout.nb_channels > 8
- ? CHANNEL_LAYOUT_DISCRETE
-- : ChannelLayoutToChromeChannelLayout(codec_context->channel_layout,
-- codec_context->channels);
-+ : ChannelLayoutToChromeChannelLayout(
-+ codec_context->ch_layout.u.mask,
-+ codec_context->ch_layout.nb_channels);
-
- int sample_rate = codec_context->sample_rate;
- switch (codec) {
-@@ -401,7 +402,7 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
- extra_data, encryption_scheme, seek_preroll,
- codec_context->delay);
- if (channel_layout == CHANNEL_LAYOUT_DISCRETE)
-- config->SetChannelsForDiscrete(codec_context->channels);
-+ config->SetChannelsForDiscrete(codec_context->ch_layout.nb_channels);
-
- #if BUILDFLAG(ENABLE_PLATFORM_AC3_EAC3_AUDIO)
- // These are bitstream formats unknown to ffmpeg, so they don't have
-@@ -470,7 +471,7 @@ void AudioDecoderConfigToAVCodecContext(const AudioDecoderConfig& config,
-
- // TODO(scherkus): should we set |channel_layout|? I'm not sure if FFmpeg uses
- // said information to decode.
-- codec_context->channels = config.channels();
-+ codec_context->ch_layout.nb_channels = config.channels();
- codec_context->sample_rate = config.samples_per_second();
-
- if (config.extra_data().empty()) {
-diff --git a/media/filters/audio_file_reader.cc b/media/filters/audio_file_reader.cc
-index 5f257bdfaa6..e1be5aa9a5b 100644
---- a/media/filters/audio_file_reader.cc
-+++ b/media/filters/audio_file_reader.cc
-@@ -113,14 +113,15 @@ bool AudioFileReader::OpenDecoder() {
-
- // Verify the channel layout is supported by Chrome. Acts as a sanity check
- // against invalid files. See http://crbug.com/171962
-- if (ChannelLayoutToChromeChannelLayout(codec_context_->channel_layout,
-- codec_context_->channels) ==
-+ if (ChannelLayoutToChromeChannelLayout(
-+ codec_context_->ch_layout.u.mask,
-+ codec_context_->ch_layout.nb_channels) ==
- CHANNEL_LAYOUT_UNSUPPORTED) {
- return false;
- }
-
- // Store initial values to guard against midstream configuration changes.
-- channels_ = codec_context_->channels;
-+ channels_ = codec_context_->ch_layout.nb_channels;
- audio_codec_ = CodecIDToAudioCodec(codec_context_->codec_id);
- sample_rate_ = codec_context_->sample_rate;
- av_sample_format_ = codec_context_->sample_fmt;
-@@ -223,7 +224,7 @@ bool AudioFileReader::OnNewFrame(
- if (frames_read < 0)
- return false;
-
-- const int channels = frame->channels;
-+ const int channels = frame->ch_layout.nb_channels;
- if (frame->sample_rate != sample_rate_ || channels != channels_ ||
- frame->format != av_sample_format_) {
- DLOG(ERROR) << "Unsupported midstream configuration change!"
-diff --git a/media/filters/audio_file_reader_unittest.cc b/media/filters/audio_file_reader_unittest.cc
-index 2aba7927a31..1f45a50cace 100644
---- a/media/filters/audio_file_reader_unittest.cc
-+++ b/media/filters/audio_file_reader_unittest.cc
-@@ -121,11 +121,11 @@ class AudioFileReaderTest : public testing::Test {
- EXPECT_FALSE(reader_->Open());
- }
-
-- void RunTestFailingDecode(const char* fn) {
-+ void RunTestFailingDecode(const char* fn, int expect_read = 0) {
- Initialize(fn);
- EXPECT_TRUE(reader_->Open());
- std::vector<std::unique_ptr<AudioBus>> decoded_audio_packets;
-- EXPECT_EQ(reader_->Read(&decoded_audio_packets), 0);
-+ EXPECT_EQ(reader_->Read(&decoded_audio_packets), expect_read);
- }
-
- void RunTestPartialDecode(const char* fn) {
-@@ -219,7 +219,7 @@ TEST_F(AudioFileReaderTest, AAC_ADTS) {
- }
-
- TEST_F(AudioFileReaderTest, MidStreamConfigChangesFail) {
-- RunTestFailingDecode("midstream_config_change.mp3");
-+ RunTestFailingDecode("midstream_config_change.mp3", 42624);
- }
- #endif
-
-diff --git a/media/filters/audio_video_metadata_extractor.cc b/media/filters/audio_video_metadata_extractor.cc
-index 185819eb936..69ff508c221 100644
---- a/media/filters/audio_video_metadata_extractor.cc
-+++ b/media/filters/audio_video_metadata_extractor.cc
-@@ -113,6 +113,15 @@ bool AudioVideoMetadataExtractor::Extract(DataSource* source,
- if (!stream)
- continue;
-
-+ void* display_matrix =
-+ av_stream_get_side_data(stream, AV_PKT_DATA_DISPLAYMATRIX, nullptr);
-+ if (display_matrix) {
-+ rotation_ = VideoTransformation::FromFFmpegDisplayMatrix(
-+ static_cast<int32_t*>(display_matrix))
-+ .rotation;
-+ info.tags["rotate"] = base::NumberToString(rotation_);
-+ }
-+
- // Extract dictionary from streams also. Needed for containers that attach
- // metadata to contained streams instead the container itself, like OGG.
- ExtractDictionary(stream->metadata, &info.tags);
-@@ -255,8 +264,6 @@ void AudioVideoMetadataExtractor::ExtractDictionary(AVDictionary* metadata,
- if (raw_tags->find(tag->key) == raw_tags->end())
- (*raw_tags)[tag->key] = tag->value;
-
-- if (ExtractInt(tag, "rotate", &rotation_))
-- continue;
- if (ExtractString(tag, "album", &album_))
- continue;
- if (ExtractString(tag, "artist", &artist_))
-diff --git a/media/filters/ffmpeg_aac_bitstream_converter.cc b/media/filters/ffmpeg_aac_bitstream_converter.cc
-index 6f231c85729..ca5e5fb927d 100644
---- a/media/filters/ffmpeg_aac_bitstream_converter.cc
-+++ b/media/filters/ffmpeg_aac_bitstream_converter.cc
-@@ -195,14 +195,15 @@ bool FFmpegAACBitstreamConverter::ConvertPacket(AVPacket* packet) {
- if (!header_generated_ || codec_ != stream_codec_parameters_->codec_id ||
- audio_profile_ != stream_codec_parameters_->profile ||
- sample_rate_index_ != sample_rate_index ||
-- channel_configuration_ != stream_codec_parameters_->channels ||
-+ channel_configuration_ !=
-+ stream_codec_parameters_->ch_layout.nb_channels ||
- frame_length_ != header_plus_packet_size) {
- header_generated_ =
- GenerateAdtsHeader(stream_codec_parameters_->codec_id,
- 0, // layer
- stream_codec_parameters_->profile, sample_rate_index,
- 0, // private stream
-- stream_codec_parameters_->channels,
-+ stream_codec_parameters_->ch_layout.nb_channels,
- 0, // originality
- 0, // home
- 0, // copyrighted_stream
-@@ -214,7 +215,7 @@ bool FFmpegAACBitstreamConverter::ConvertPacket(AVPacket* packet) {
- codec_ = stream_codec_parameters_->codec_id;
- audio_profile_ = stream_codec_parameters_->profile;
- sample_rate_index_ = sample_rate_index;
-- channel_configuration_ = stream_codec_parameters_->channels;
-+ channel_configuration_ = stream_codec_parameters_->ch_layout.nb_channels;
- frame_length_ = header_plus_packet_size;
- }
-
-diff --git a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-index 1fd4c5ccd7d..f59bcd8fdaf 100644
---- a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-+++ b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-@@ -34,7 +34,7 @@ class FFmpegAACBitstreamConverterTest : public testing::Test {
- memset(&test_parameters_, 0, sizeof(AVCodecParameters));
- test_parameters_.codec_id = AV_CODEC_ID_AAC;
- test_parameters_.profile = FF_PROFILE_AAC_MAIN;
-- test_parameters_.channels = 2;
-+ test_parameters_.ch_layout.nb_channels = 2;
- test_parameters_.extradata = extradata_header_;
- test_parameters_.extradata_size = sizeof(extradata_header_);
- }
-diff --git a/media/filters/ffmpeg_audio_decoder.cc b/media/filters/ffmpeg_audio_decoder.cc
-index 6a56c675f7d..4615fdeb3fb 100644
---- a/media/filters/ffmpeg_audio_decoder.cc
-+++ b/media/filters/ffmpeg_audio_decoder.cc
-@@ -28,7 +28,7 @@ namespace media {
-
- // Return the number of channels from the data in |frame|.
- static inline int DetermineChannels(AVFrame* frame) {
-- return frame->channels;
-+ return frame->ch_layout.nb_channels;
- }
-
- // Called by FFmpeg's allocation routine to allocate a buffer. Uses
-@@ -231,7 +231,7 @@ bool FFmpegAudioDecoder::OnNewFrame(const DecoderBuffer& buffer,
- // Translate unsupported into discrete layouts for discrete configurations;
- // ffmpeg does not have a labeled discrete configuration internally.
- ChannelLayout channel_layout = ChannelLayoutToChromeChannelLayout(
-- codec_context_->channel_layout, codec_context_->channels);
-+ codec_context_->ch_layout.u.mask, codec_context_->ch_layout.nb_channels);
- if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED &&
- config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE) {
- channel_layout = CHANNEL_LAYOUT_DISCRETE;
-@@ -348,11 +348,11 @@ bool FFmpegAudioDecoder::ConfigureDecoder(const AudioDecoderConfig& config) {
- // Success!
- av_sample_format_ = codec_context_->sample_fmt;
-
-- if (codec_context_->channels != config.channels()) {
-+ if (codec_context_->ch_layout.nb_channels != config.channels()) {
- MEDIA_LOG(ERROR, media_log_)
- << "Audio configuration specified " << config.channels()
- << " channels, but FFmpeg thinks the file contains "
-- << codec_context_->channels << " channels";
-+ << codec_context_->ch_layout.nb_channels << " channels";
- ReleaseFFmpegResources();
- state_ = DecoderState::kUninitialized;
- return false;
-@@ -403,7 +403,7 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
- if (frame->nb_samples <= 0)
- return AVERROR(EINVAL);
-
-- if (s->channels != channels) {
-+ if (s->ch_layout.nb_channels != channels) {
- DLOG(ERROR) << "AVCodecContext and AVFrame disagree on channel count.";
- return AVERROR(EINVAL);
- }
-@@ -436,7 +436,8 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
- ChannelLayout channel_layout =
- config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE
- ? CHANNEL_LAYOUT_DISCRETE
-- : ChannelLayoutToChromeChannelLayout(s->channel_layout, s->channels);
-+ : ChannelLayoutToChromeChannelLayout(s->ch_layout.u.mask,
-+ s->ch_layout.nb_channels);
-
- if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED) {
- DLOG(ERROR) << "Unsupported channel layout.";
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
deleted file mode 100644
index 8bbbbe9483632..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
+++ /dev/null
@@ -1 +0,0 @@
--RNp1
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
deleted file mode 100644
index b2a113791734c..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From ded379824f5de39357b6b1894578101aba5cdf05 Mon Sep 17 00:00:00 2001
-From: Eugene Zemtsov <eugene@chromium.org>
-Date: Fri, 29 Jul 2022 04:41:04 +0000
-Subject: [PATCH] Roll src/third_party/ffmpeg/ 880df5ede..b71ecd02b (279
- commits)
-
-https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/880df5ede50a..b71ecd02b479
-
-$ git log 880df5ede..b71ecd02b --date=short --no-merges --format='%ad %ae %s'
-2022-07-27 eugene Roll for M106
-2022-07-25 andreas.rheinhardt avcodec/x86/pngdsp: Remove obsolete ff_add_bytes_l2_mmx()
-2022-07-22 andreas.rheinhardt avcodec/hevcdec: Output MD5-message in one piece
-2022-07-24 epirat07 configure: properly require libx264 if enabled
-2022-07-24 zane avformat/argo_cvg: expose loop/reverb/checksum via metadata
-(...)
-2022-05-03 leo.izen avcodec/libjxldec: properly tag output colorspace
-2022-06-25 ffmpeg avfilter/Makefile: always make colorspace.o
-2022-03-02 brad avutil/ppc/cpu: Use proper header for OpenBSD PPC CPU detection
-2022-06-24 jamrial avformat/http: include version.h
-2022-05-16 mbonda-at-nvidia.com AV1 VDPAU hwaccel Decode support
-
-Created with:
- roll-dep src/third_party/ffmpeg
-
-ffmpeg usage fix:
- Switch from AVFrame::pkt_duration to AVFrame::duration,
- AVFrame::pkt_duration is deprecated
-
-Bug: 1344646
-Change-Id: Iaa3abf48ef81dae6d282bca8f0fa2a8dffeeba25
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3788638
-Reviewed-by: Will Cassella <cassew@chromium.org>
-Commit-Queue: Eugene Zemtsov <eugene@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#1029623}
----
- media/filters/audio_file_reader.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/media/filters/audio_file_reader.cc b/media/filters/audio_file_reader.cc
-index e1be5aa9a5b..951c003956f 100644
---- a/media/filters/audio_file_reader.cc
-+++ b/media/filters/audio_file_reader.cc
-@@ -243,10 +243,10 @@ bool AudioFileReader::OnNewFrame(
- // silence from being output. In the case where we are also discarding some
- // portion of the packet (as indicated by a negative pts), we further want to
- // adjust the duration downward by however much exists before zero.
-- if (audio_codec_ == AudioCodec::kAAC && frame->pkt_duration) {
-+ if (audio_codec_ == AudioCodec::kAAC && frame->duration) {
- const base::TimeDelta pkt_duration = ConvertFromTimeBase(
- glue_->format_context()->streams[stream_index_]->time_base,
-- frame->pkt_duration + std::min(static_cast<int64_t>(0), frame->pts));
-+ frame->duration + std::min(static_cast<int64_t>(0), frame->pts));
- const base::TimeDelta frame_duration =
- base::Seconds(frames_read / static_cast<double>(sample_rate_));
-
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
deleted file mode 100644
index 8bbbbe9483632..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
+++ /dev/null
@@ -1 +0,0 @@
--RNp1
diff --git a/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch b/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
deleted file mode 100644
index 04d04b166ba37..0000000000000
--- a/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/media/filters/ffmpeg_demuxer.cc.orig
-+++ b/media/filters/ffmpeg_demuxer.cc
-@@ -390,7 +390,7 @@
-
- scoped_refptr<DecoderBuffer> buffer;
-
-- size_t side_data_size = 0;
-+ int side_data_size = 0;
- uint8_t* side_data = av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
-
-@@ -453,7 +453,7 @@
- packet->size - data_offset);
- }
-
-- size_t skip_samples_size = 0;
-+ int skip_samples_size = 0;
- const uint32_t* skip_samples_ptr =
- reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
diff --git a/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch b/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
deleted file mode 100644
index bb461ef3664a2..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- chromium-120.0.6099.35/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.than 2023-11-26 13:50:07.005519877 +0100
-+++ chromium-120.0.6099.35/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h 2023-11-26 13:50:49.727267240 +0100
-@@ -152,10 +152,7 @@
- (!BUILDFLAG(PUT_REF_COUNT_IN_PREVIOUS_SLOT) && \
- defined(ARCH_CPU_LITTLE_ENDIAN))
-
--#define PA_CONFIG_HAS_MEMORY_TAGGING() \
-- (defined(ARCH_CPU_ARM64) && defined(__clang__) && \
-- !defined(ADDRESS_SANITIZER) && \
-- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)))
-+#define PA_CONFIG_HAS_MEMORY_TAGGING() 0
-
- #if PA_CONFIG(HAS_MEMORY_TAGGING)
- static_assert(sizeof(void*) == 8);
diff --git a/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch b/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
deleted file mode 100644
index 112da65b4d9b6..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -up chromium-120.0.6099.56/third_party/libc++/src/include/__config.me chromium-120.0.6099.56/third_party/libc++/src/include/__config
---- chromium-120.0.6099.56/third_party/libc++/src/include/__config.me 2023-12-03 00:05:51.254483474 +0100
-+++ chromium-120.0.6099.56/third_party/libc++/src/include/__config 2023-12-03 00:06:05.872863168 +0100
-@@ -32,11 +32,7 @@
-
- // Warn if a compiler version is used that is not supported anymore
- // LLVM RELEASE Update the minimum compiler versions
--# if defined(_LIBCPP_CLANG_VER)
--# if _LIBCPP_CLANG_VER < 1500
--# warning "Libc++ only supports Clang 15 and later"
--# endif
--# elif defined(_LIBCPP_APPLE_CLANG_VER)
-+# if defined(_LIBCPP_APPLE_CLANG_VER)
- # if _LIBCPP_APPLE_CLANG_VER < 1500
- # warning "Libc++ only supports AppleClang 15 and later"
- # endif
diff --git a/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch b/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
deleted file mode 100644
index 72c7b7ec41c28..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn.me chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn
---- chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn.me 2023-11-26 16:14:15.364064126 +0100
-+++ chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn 2023-11-26 16:41:16.877321990 +0100
-@@ -21,6 +21,9 @@ if (use_atk) {
- minor = atspi_version[1]
- micro = atspi_version[2]
-
-+ # gn workaround for the error: Assignment had no effect
-+ print("ATSPI Version: $major.$minor.$micro")
-+
- # ATSPI 2.49.90 now defines these for us and it's an error for us to
- # redefine them on the compiler command line.
- # See ATSPI 927344a34cd5bf81fc64da4968241735ecb4f03b
diff --git a/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch b/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
deleted file mode 100644
index 44f867475b218..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
+++ /dev/null
@@ -1,459 +0,0 @@
-diff -up chromium-110.0.5481.177/base/memory/ref_counted.h.me chromium-110.0.5481.177/base/memory/ref_counted.h
---- chromium-110.0.5481.177/base/memory/ref_counted.h.me 2023-02-23 13:34:33.174817255 -0500
-+++ chromium-110.0.5481.177/base/memory/ref_counted.h 2023-02-23 13:42:28.646052469 -0500
-@@ -6,6 +6,7 @@
- #define BASE_MEMORY_REF_COUNTED_H_
-
- #include <stddef.h>
-+#include <limits>
-
- #include <utility>
-
-diff -up chromium-109.0.5414.74/base/check_op.h.me chromium-109.0.5414.74/base/check_op.h
---- chromium-109.0.5414.74/base/check_op.h.me 2023-01-17 17:39:27.620875883 +0100
-+++ chromium-109.0.5414.74/base/check_op.h 2023-01-17 17:39:42.546060957 +0100
-@@ -5,6 +5,7 @@
- #ifndef BASE_CHECK_OP_H_
- #define BASE_CHECK_OP_H_
-
-+#include <cstdint>
- #include <cstddef>
- #include <string>
- #include <type_traits>
-diff -up chromium-109.0.5414.74/base/debug/profiler.h.me chromium-109.0.5414.74/base/debug/profiler.h
---- chromium-109.0.5414.74/base/debug/profiler.h.me 2023-01-17 16:29:26.368090073 +0100
-+++ chromium-109.0.5414.74/base/debug/profiler.h 2023-01-17 16:59:41.190628679 +0100
-@@ -7,6 +7,7 @@
-
- #include <stddef.h>
-
-+#include <cstdint>
- #include <string>
-
- #include "base/base_export.h"
-diff -up chromium-109.0.5414.74/gpu/config/gpu_feature_info.h.me chromium-109.0.5414.74/gpu/config/gpu_feature_info.h
---- chromium-109.0.5414.74/gpu/config/gpu_feature_info.h.me 2023-01-17 19:06:53.530675129 +0100
-+++ chromium-109.0.5414.74/gpu/config/gpu_feature_info.h 2023-01-17 19:07:08.874849879 +0100
-@@ -5,6 +5,7 @@
- #ifndef GPU_CONFIG_GPU_FEATURE_INFO_H_
- #define GPU_CONFIG_GPU_FEATURE_INFO_H_
-
-+#include <cstdint>
- #include <string>
- #include <vector>
-
-diff -up chromium-109.0.5414.74/net/base/net_export.h.me chromium-109.0.5414.74/net/base/net_export.h
---- chromium-109.0.5414.74/net/base/net_export.h.me 2023-01-17 18:16:34.133854615 +0100
-+++ chromium-109.0.5414.74/net/base/net_export.h 2023-01-17 18:16:15.945623153 +0100
-@@ -5,6 +5,8 @@
- #ifndef NET_BASE_NET_EXPORT_H_
- #define NET_BASE_NET_EXPORT_H_
-
-+#include <cstdint>
-+
- // Defines NET_EXPORT so that functionality implemented by the net module can
- // be exported to consumers, and NET_EXPORT_PRIVATE that allows unit tests to
- // access features not intended to be used directly by real consumers.
-diff -up chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h.me chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h
---- chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h.me 2023-01-17 17:12:34.184686515 +0100
-+++ chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h 2023-01-17 17:13:16.537162420 +0100
-@@ -5,6 +5,7 @@
- #ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
- #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
-
-+#include <cstdint>
- #include <bitset>
- #include <string>
-
-diff -up chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h.me chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h
---- chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h.me 2023-01-17 17:33:20.895717307 +0100
-+++ chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h 2023-01-17 17:34:03.456185365 +0100
-@@ -27,6 +27,7 @@
- #ifndef ABSL_STRINGS_STRING_VIEW_H_
- #define ABSL_STRINGS_STRING_VIEW_H_
-
-+#include <cstdint>
- #include <algorithm>
- #include <cassert>
- #include <cstddef>
-diff -up chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h.me chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h
---- chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h.me 2023-01-17 17:36:15.017616250 +0100
-+++ chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h 2023-01-17 17:36:48.960982195 +0100
-@@ -10,6 +10,7 @@
- #ifndef GLSLANG_SHADERVARS_H_
- #define GLSLANG_SHADERVARS_H_
-
-+#include <cstdint>
- #include <algorithm>
- #include <array>
- #include <string>
-diff -up chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.me chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h
---- chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.me 2023-01-17 19:17:40.480876171 +0100
-+++ chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h 2023-01-17 19:17:46.803958320 +0100
-@@ -5,6 +5,7 @@
- #ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
- #define THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
-
-+#include <cstdint>
- #include <array>
- #include <string>
-
-diff -up chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.me chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h
---- chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.me 2023-01-17 18:02:44.681538107 +0100
-+++ chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h 2023-01-17 18:02:57.208679140 +0100
-@@ -15,6 +15,7 @@
- #ifndef SRC_TINT_READER_SPIRV_NAMER_H_
- #define SRC_TINT_READER_SPIRV_NAMER_H_
-
-+#include <cstdint>
- #include <string>
- #include <unordered_map>
- #include <vector>
-diff -up chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.me chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h
---- chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.me 2023-01-18 15:22:38.472940648 +0100
-+++ chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h 2023-01-18 15:23:09.380255101 +0100
-@@ -5,6 +5,7 @@
- #ifndef DISCOVERY_DNSSD_PUBLIC_DNS_SD_TXT_RECORD_H_
- #define DISCOVERY_DNSSD_PUBLIC_DNS_SD_TXT_RECORD_H_
-
-+#include <cstdint>
- #include <functional>
- #include <map>
- #include <set>
-diff -up chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp.me chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp
---- chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp.me 2023-01-17 15:37:48.530626516 +0100
-+++ chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp 2023-01-17 16:57:46.025548092 +0100
-@@ -17,6 +17,7 @@
-
- #include "System/Debug.hpp"
-
-+#include <cstdint>
- #include <cstddef>
- #include <functional>
- #include <unordered_set>
-diff -up chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h.me chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h
---- chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h.me 2023-01-17 18:08:25.745491353 +0100
-+++ chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h 2023-01-17 18:08:35.777667632 +0100
-@@ -5,6 +5,7 @@
- #ifndef UI_GFX_LINEAR_GRADIENT_H_
- #define UI_GFX_LINEAR_GRADIENT_H_
-
-+#include <cstdint>
- #include <array>
- #include <string>
-
-diff -up chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h.me chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h
---- chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h.me 2023-01-19 10:10:21.287876736 +0100
-+++ chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h 2023-01-19 10:11:21.714778896 +0100
-@@ -17,6 +17,7 @@ limitations under the License.
- #define RUY_RUY_PROFILER_INSTRUMENTATION_H_
-
- #ifdef RUY_PROFILER
-+#include <string>
- #include <cstdio>
- #include <mutex>
- #include <vector>
-diff -up chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.me chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h
---- chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.me 2023-01-19 10:30:27.533861985 +0100
-+++ chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h 2023-01-19 10:31:12.585554183 +0100
-@@ -31,6 +31,7 @@ limitations under the License.
- #ifndef TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
- #define TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
-
-+#include <cstdint>
- #include <complex>
- #include <deque>
- #include <vector>
-diff -up chromium-109.0.5414.74/base/containers/flat_map.h.mee chromium-109.0.5414.74/base/containers/flat_map.h
---- chromium-109.0.5414.74/base/containers/flat_map.h.mee 2023-01-19 10:59:52.214957773 +0100
-+++ chromium-109.0.5414.74/base/containers/flat_map.h 2023-01-19 11:00:06.415215309 +0100
-@@ -5,6 +5,7 @@
- #ifndef BASE_CONTAINERS_FLAT_MAP_H_
- #define BASE_CONTAINERS_FLAT_MAP_H_
-
-+#include <cstdint>
- #include <functional>
- #include <tuple>
- #include <utility>
-diff -up chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h.mee chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h
---- chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h.mee 2023-01-19 10:36:40.571422826 +0100
-+++ chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h 2023-01-19 10:36:49.343565294 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_CRASH_CORE_APP_CRASH_REPORTER_CLIENT_H_
- #define COMPONENTS_CRASH_CORE_APP_CRASH_REPORTER_CLIENT_H_
-
-+#include <cstdint>
- #include <string>
-
- #include "build/build_config.h"
-diff -up chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h.mee chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h
---- chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h.mee 2023-01-19 11:45:15.953159755 +0100
-+++ chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h 2023-01-19 11:45:22.320246241 +0100
-@@ -5,6 +5,8 @@
- #ifndef UI_BASE_PREDICTION_KALMAN_FILTER_H_
- #define UI_BASE_PREDICTION_KALMAN_FILTER_H_
-
-+#include <cstdint>
-+
- #include "base/component_export.h"
- #include "ui/gfx/geometry/matrix3_f.h"
-
-diff -up chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h.me chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h
---- chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h.me 2023-01-19 15:20:07.620987949 +0100
-+++ chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h 2023-01-19 15:20:18.324173702 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
- #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
-
-+#include <cstdint>
- #include <string>
-
-
-diff -up chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h.me chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h
---- chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h.me 2023-01-19 16:00:14.350186515 +0100
-+++ chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h 2023-01-19 16:00:21.643307993 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
- #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
-
-+#include <cstdint>
- #include <string>
-
- namespace feature_engagement {
-diff -up chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h.me chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h
---- chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h.me 2023-01-19 15:59:18.210239416 +0100
-+++ chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h 2023-01-19 15:59:34.513515030 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
- #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
-
-+#include <cstdint>
- #include <string>
-
- #include "components/feature_engagement/internal/event_storage_validator.h"
-diff -up chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.me chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc
---- chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.me 2023-01-19 16:09:29.216477182 +0100
-+++ chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc 2023-01-19 16:10:05.657089208 +0100
-@@ -45,6 +45,7 @@
- #include "llvm/Support/SaveAndRestore.h"
- #include "llvm/Support/raw_ostream.h"
- #include <algorithm>
-+#include <cstdint>
- #include <string>
- #include <sysexits.h>
- #ifdef HAVE_BACKTRACE
-diff -up chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h.me chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h
---- chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h.me 2023-01-19 16:32:05.338160131 +0100
-+++ chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h 2023-01-19 16:32:16.213326798 +0100
-@@ -5,6 +5,7 @@
- #ifndef CHROME_BROWSER_PRIVACY_BUDGET_ENCOUNTERED_SURFACE_TRACKER_H_
- #define CHROME_BROWSER_PRIVACY_BUDGET_ENCOUNTERED_SURFACE_TRACKER_H_
-
-+#include <cstdint>
- #include <map>
-
- #include "base/containers/flat_set.h"
-diff -up chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h.me chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h
---- chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h.me 2023-01-19 16:47:55.548571102 +0100
-+++ chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h 2023-01-19 16:48:29.214146529 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
- #define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
-
-+#include <cstdint>
- #include <string>
-
- class GURL;
-diff -up chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h.me chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h
---- chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h.me 2023-01-19 16:57:29.525372814 +0100
-+++ chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h 2023-01-19 16:58:02.667979288 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
- #define COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
-
-+#include <cstdint>
- #include <string>
- #include <utility>
- #include <vector>
-diff -up chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h.me chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h
---- chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h.me 2023-01-19 17:02:45.258544665 +0100
-+++ chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h 2023-01-19 17:02:52.577611757 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
- #define COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
-
-+#include <cstdint>
- #include <stddef.h>
-
- #include <string>
-diff -up chromium-109.0.5414.74/pdf/document_attachment_info.h.me chromium-109.0.5414.74/pdf/document_attachment_info.h
---- chromium-109.0.5414.74/pdf/document_attachment_info.h.me 2023-01-19 17:28:28.552063534 +0100
-+++ chromium-109.0.5414.74/pdf/document_attachment_info.h 2023-01-19 17:28:48.072379953 +0100
-@@ -5,6 +5,7 @@
- #ifndef PDF_DOCUMENT_ATTACHMENT_INFO_H_
- #define PDF_DOCUMENT_ATTACHMENT_INFO_H_
-
-+#include <cstdint>
- #include <string>
-
-
-diff -up chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h.me chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h
---- chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h.me 2023-01-19 18:25:47.648193710 +0100
-+++ chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h 2023-01-19 18:26:11.488593556 +0100
-@@ -5,6 +5,8 @@
- #ifndef CONSTANTS_ANNOTATION_FLAGS_H_
- #define CONSTANTS_ANNOTATION_FLAGS_H_
-
-+#include <cstdint>
-+
- namespace pdfium {
- namespace annotation_flags {
-
-diff -up chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.me chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
---- chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.me 2023-04-15 16:44:55.344305412 +0200
-+++ chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h 2023-04-15 16:47:09.028666995 +0200
-@@ -2854,6 +2854,7 @@ static void vma_aligned_free(void* VMA_N
-
- // Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.
- #if VMA_STATS_STRING_ENABLED
-+#include <stdio.h>
- static inline void VmaUint32ToStr(char* VMA_NOT_NULL outStr, size_t strLen, uint32_t num)
- {
- snprintf(outStr, strLen, "%u", static_cast<unsigned int>(num));
-diff -up chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h.me chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h
---- chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h.me 2023-04-18 15:55:44.774916319 +0200
-+++ chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h 2023-04-18 15:55:54.441085882 +0200
-@@ -8,6 +8,7 @@
- #include <memory>
- #include <string>
- #include <vector>
-+#include <variant>
-
- #include "base/containers/span.h"
- #include "base/functional/callback_forward.h"
-diff -up chromium-113.0.5672.37/gin/time_clamper.h.me chromium-113.0.5672.37/gin/time_clamper.h
---- chromium-113.0.5672.37/gin/time_clamper.h.me 2023-04-18 16:38:41.180437467 +0200
-+++ chromium-113.0.5672.37/gin/time_clamper.h 2023-04-18 16:39:43.857049432 +0200
-@@ -48,7 +48,7 @@ class GIN_EXPORT TimeClamper {
- const int64_t micros = now_micros % 1000;
- // abs() is necessary for devices with times before unix-epoch (most likely
- // configured incorrectly).
-- if (abs(micros) + kResolutionMicros < 1000) {
-+ if (std::abs(micros) + kResolutionMicros < 1000) {
- return now_micros / 1000;
- }
- return ClampTimeResolution(now_micros) / 1000;
-diff -up chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc.me chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc
---- chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc.me 2023-04-21 08:07:55.362714544 +0200
-+++ chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc 2023-04-21 08:14:35.424158693 +0200
-@@ -10,6 +10,7 @@
- #include <queue>
- #include <utility>
- #include <vector>
-+#include <cstring>
-
- #include "base/check.h"
- #include "base/files/file_path.h"
-diff -up chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc.me chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc
---- chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc.me 2023-06-18 12:33:52.387412788 +0200
-+++ chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc 2023-06-18 12:35:28.229148935 +0200
-@@ -3,6 +3,7 @@
- // found in the LICENSE file.
-
- #include "skia/ext/skcolorspace_trfn.h"
-+#include <cmath>
-
- namespace skia {
-
-diff -up chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h
---- chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint 2021-11-19 17:05:31.379750350 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h 2021-11-19 17:07:35.191520127 -0500
-@@ -11,6 +11,7 @@
- #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
- #define COMMON_VIDEO_H264_SPS_PARSER_H_
-
-+#include <cstdint>
- #include "absl/types/optional.h"
- #include "rtc_base/bitstream_reader.h"
-
-diff -up chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h
---- chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint 2021-11-12 05:28:10.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h 2021-11-19 17:05:31.379750350 -0500
-@@ -11,6 +11,7 @@
- #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
- #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
-
-+#include <cstdint>
- #include <limits>
-
- #include "absl/types/optional.h"
-diff -up chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h.missing-cstdint chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h
---- chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h.missing-cstdint 2021-11-12 05:25:24.000000000 -0500
-+++ chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h 2021-11-19 17:05:31.379750350 -0500
-@@ -9,6 +9,8 @@
-
- #include "ui/gfx/buffer_types.h"
-
-+#include <cstdint>
-+
- namespace ui {
-
- int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format);
-diff -up chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc
---- chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring 2021-11-12 05:28:09.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc 2021-11-19 17:10:02.927438695 -0500
-@@ -8,6 +8,8 @@
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-+#include <cstring>
-+
- #include "audio/utility/channel_mixer.h"
-
- #include "audio/utility/channel_mixing_matrix.h"
-diff -up chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
---- chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring 2021-11-12 05:28:10.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2021-11-19 17:10:02.928438701 -0500
-@@ -10,6 +10,7 @@
-
- #include "modules/video_coding/utility/ivf_file_reader.h"
-
-+#include <cstring>
- #include <string>
- #include <vector>
-
-diff -up chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h.me chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h
---- chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h.me 2023-09-10 17:53:04.826298351 +0200
-+++ chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h 2023-09-10 17:53:22.201756894 +0200
-@@ -5,6 +5,7 @@
- #ifndef IPCZ_SRC_IPCZ_ROUTER_LINK_H_
- #define IPCZ_SRC_IPCZ_ROUTER_LINK_H_
-
-+#include <memory>
- #include <cstddef>
- #include <functional>
- #include <string>
-diff -up chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc.me chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc
---- chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc.me 2023-09-10 17:36:27.199841051 +0200
-+++ chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc 2023-09-10 17:44:51.870554233 +0200
-@@ -14,6 +14,7 @@
- * limitations under the License.
- */
-
-+#include <cmath>
- #include "cpp/palettes/tones.h"
-
- #include "cpp/cam/cam.h"
-diff -up chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h.me chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h
---- chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h.me 2023-10-01 13:55:01.913193186 +0200
-+++ chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h 2023-10-01 14:05:38.488038429 +0200
-@@ -5,6 +5,9 @@
- #ifndef SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
- #define SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
-
-+#include <cstddef>
-+#include <cstdint>
-+
- #include <type_traits>
-
- namespace device {
diff --git a/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch b/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
new file mode 100644
index 0000000000000..cf807ddb31ec7
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-arm64-memory_tagging.patch
@@ -0,0 +1,13 @@
+diff -up chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.me chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h
+--- chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.me 2024-01-16 14:20:52.401890657 +0100
++++ chromium-121.0.6167.57/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h 2024-01-16 15:08:04.070156474 +0100
+@@ -162,7 +162,8 @@ static_assert(sizeof(void*) != 8, "");
+
+ #if defined(ARCH_CPU_ARM64) && defined(__clang__) && \
+ !defined(ADDRESS_SANITIZER) && \
+- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID))
++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)) && \
++ __GLIBC_PREREQ(2, 29)
+ #define PA_CONFIG_HAS_MEMORY_TAGGING() 1
+ #else
+ #define PA_CONFIG_HAS_MEMORY_TAGGING() 0
diff --git a/srcpkgs/chromium/patches/chromium-121-constexpr.patch b/srcpkgs/chromium/patches/chromium-121-constexpr.patch
new file mode 100644
index 0000000000000..a0b7166a5c8f8
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-constexpr.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h.me chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h
+--- chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h.me 2024-01-18 17:00:24.791582422 +0100
++++ chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h 2024-01-18 17:22:21.521682845 +0100
+@@ -27,7 +27,7 @@ struct QueryParams {
+ QueryParams(const QueryParams& other);
+ QueryParams& operator=(const QueryParams& other);
+
+- friend constexpr bool operator==(const QueryParams&,
++ friend bool operator==(const QueryParams&,
+ const QueryParams&) = default;
+
+ // Individual resource contexts to measure.
diff --git a/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch b/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
new file mode 100644
index 0000000000000..bc86eb2355874
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
@@ -0,0 +1,15 @@
+--- chromium-121.0.6167.57/third_party/libc++/src/include/__config.orig 2024-01-16 18:38:00.995930774 +0100
++++ chromium-121.0.6167.57/third_party/libc++/src/include/__config 2024-01-16 18:43:47.056517289 +0100
+@@ -32,11 +32,7 @@
+
+ // Warn if a compiler version is used that is not supported anymore
+ // LLVM RELEASE Update the minimum compiler versions
+-# if defined(_LIBCPP_CLANG_VER)
+-# if _LIBCPP_CLANG_VER < 1600
+-# warning "Libc++ only supports Clang 16 and later"
+-# endif
+-# elif defined(_LIBCPP_APPLE_CLANG_VER)
++# if defined(_LIBCPP_APPLE_CLANG_VER)
+ # if _LIBCPP_APPLE_CLANG_VER < 1500
+ # warning "Libc++ only supports AppleClang 15 and later"
+ # endif
diff --git a/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch b/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
new file mode 100644
index 0000000000000..0a2ac1de3561d
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc.me chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc
+--- chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc.me 2024-01-23 15:13:11.469104694 +0100
++++ chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc 2024-01-23 15:11:40.117842015 +0100
+@@ -46,7 +46,7 @@ size_t GetResultSizeBytes(const HeaderDi
+
+ } // namespace
+
+-HeaderDirectFromSellerSignals::Result::Result() = default;
++HeaderDirectFromSellerSignals::Result::Result() {}
+
+ HeaderDirectFromSellerSignals::Result::Result(
+ absl::optional<std::string> seller_signals,
--git a/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch b/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
new file mode 100644
index 0000000000000..377de0d1140cb
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
@@ -0,0 +1,459 @@
+diff -up chromium-119.0.6045.105/base/check_op.h.missing-header-files chromium-119.0.6045.105/base/check_op.h
+--- chromium-119.0.6045.105/base/check_op.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/check_op.h 2023-11-06 14:34:01.808868982 +0100
+@@ -5,6 +5,7 @@
+ #ifndef BASE_CHECK_OP_H_
+ #define BASE_CHECK_OP_H_
+
++#include <cstdint>
+ #include <cstddef>
+ #include <string>
+ #include <string_view>
+diff -up chromium-119.0.6045.105/base/containers/flat_map.h.missing-header-files chromium-119.0.6045.105/base/containers/flat_map.h
+--- chromium-119.0.6045.105/base/containers/flat_map.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/containers/flat_map.h 2023-11-06 14:34:01.813869089 +0100
+@@ -5,6 +5,7 @@
+ #ifndef BASE_CONTAINERS_FLAT_MAP_H_
+ #define BASE_CONTAINERS_FLAT_MAP_H_
+
++#include <cstdint>
+ #include <functional>
+ #include <tuple>
+ #include <type_traits>
+diff -up chromium-119.0.6045.105/base/debug/profiler.h.missing-header-files chromium-119.0.6045.105/base/debug/profiler.h
+--- chromium-119.0.6045.105/base/debug/profiler.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/debug/profiler.h 2023-11-06 14:34:01.809869004 +0100
+@@ -8,6 +8,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/base_export.h"
+diff -up chromium-119.0.6045.105/base/memory/ref_counted.h.missing-header-files chromium-119.0.6045.105/base/memory/ref_counted.h
+--- chromium-119.0.6045.105/base/memory/ref_counted.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/memory/ref_counted.h 2023-11-06 14:34:01.808868982 +0100
+@@ -6,6 +6,7 @@
+ #define BASE_MEMORY_REF_COUNTED_H_
+
+ #include <stddef.h>
++#include <limits>
+
+ #include <limits>
+ #include <utility>
+diff -up chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h.missing-header-files chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h
+--- chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h.missing-header-files 2023-11-01 19:10:13.000000000 +0100
++++ chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <map>
+
+ #include "base/containers/flat_set.h"
+diff -up chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h.missing-header-files chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h
+--- chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h.missing-header-files 2023-11-01 19:10:16.000000000 +0100
++++ chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h 2023-11-06 14:34:01.817869174 +0100
+@@ -8,6 +8,7 @@
+ #include <memory>
+ #include <string>
+ #include <vector>
++#include <variant>
+
+ #include "base/containers/span.h"
+ #include "base/functional/callback_forward.h"
+diff -up chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc.missing-header-files chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc
+--- chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc.missing-header-files 2023-11-01 19:10:16.000000000 +0100
++++ chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc 2023-11-06 14:34:01.818869196 +0100
+@@ -11,6 +11,7 @@
+ #include <queue>
+ #include <utility>
+ #include <vector>
++#include <cstring>
+
+ #include "base/check.h"
+ #include "base/files/file_path.h"
+diff -up chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h.missing-header-files chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h
+--- chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h.missing-header-files 2023-11-01 19:10:19.000000000 +0100
++++ chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ class GURL;
+diff -up chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h.missing-header-files chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h
+--- chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h.missing-header-files 2023-11-01 19:10:20.000000000 +0100
++++ chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h 2023-11-06 14:34:01.813869089 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "build/build_config.h"
+diff -up chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h.missing-header-files chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h
+--- chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ namespace feature_engagement {
+diff -up chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h.missing-header-files chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h
+--- chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
+ #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
+
++#include <cstdint>
+ #include <string>
+
+ #include "components/feature_engagement/internal/event_storage_validator.h"
+diff -up chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h.missing-header-files chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h
+--- chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+ #include <utility>
+ #include <vector>
+diff -up chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h.missing-header-files chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h
+--- chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+
+diff -up chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h.missing-header-files chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h
+--- chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h 2023-11-06 14:34:01.815869132 +0100
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
+ #define COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
+
++#include <cstdint>
+ #include <stddef.h>
+ #include <stdint.h>
+
+diff -up chromium-119.0.6045.105/gin/time_clamper.h.missing-header-files chromium-119.0.6045.105/gin/time_clamper.h
+--- chromium-119.0.6045.105/gin/time_clamper.h.missing-header-files 2023-11-01 19:10:28.000000000 +0100
++++ chromium-119.0.6045.105/gin/time_clamper.h 2023-11-06 14:34:01.818869196 +0100
+@@ -48,7 +48,7 @@ class GIN_EXPORT TimeClamper {
+ const int64_t micros = now_micros % 1000;
+ // abs() is necessary for devices with times before unix-epoch (most likely
+ // configured incorrectly).
+- if (abs(micros) + kResolutionMicros < 1000) {
++ if (std::abs(micros) + kResolutionMicros < 1000) {
+ return now_micros / 1000;
+ }
+ return ClampTimeResolution(now_micros) / 1000;
+diff -up chromium-119.0.6045.105/gpu/config/gpu_feature_info.h.missing-header-files chromium-119.0.6045.105/gpu/config/gpu_feature_info.h
+--- chromium-119.0.6045.105/gpu/config/gpu_feature_info.h.missing-header-files 2023-11-01 19:10:28.000000000 +0100
++++ chromium-119.0.6045.105/gpu/config/gpu_feature_info.h 2023-11-06 14:34:01.809869004 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff -up chromium-119.0.6045.105/net/base/net_export.h.missing-header-files chromium-119.0.6045.105/net/base/net_export.h
+--- chromium-119.0.6045.105/net/base/net_export.h.missing-header-files 2023-11-01 19:10:32.000000000 +0100
++++ chromium-119.0.6045.105/net/base/net_export.h 2023-11-06 14:34:01.809869004 +0100
+@@ -5,6 +5,8 @@
+ #ifndef NET_BASE_NET_EXPORT_H_
+ #define NET_BASE_NET_EXPORT_H_
+
++#include <cstdint>
++
+ // Defines NET_EXPORT so that functionality implemented by the net module can
+ // be exported to consumers, and NET_EXPORT_PRIVATE that allows unit tests to
+ // access features not intended to be used directly by real consumers.
+diff -up chromium-119.0.6045.105/pdf/document_attachment_info.h.missing-header-files chromium-119.0.6045.105/pdf/document_attachment_info.h
+--- chromium-119.0.6045.105/pdf/document_attachment_info.h.missing-header-files 2023-11-01 19:10:34.000000000 +0100
++++ chromium-119.0.6045.105/pdf/document_attachment_info.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+
+diff -up chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h.missing-header-files chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h
+--- chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h.missing-header-files 2023-11-01 19:10:34.000000000 +0100
++++ chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h 2023-11-06 14:34:01.809869004 +0100
+@@ -5,6 +5,7 @@
+ #ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+ #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+
++#include <cstdint>
+ #include <bitset>
+ #include <cstdint>
+ #include <string>
+diff -up chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h.missing-header-files chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h
+--- chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h.missing-header-files 2023-11-01 19:10:35.000000000 +0100
++++ chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h 2023-11-06 14:34:01.820869238 +0100
+@@ -8,6 +8,9 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <cstddef>
++#include <cstdint>
++
+ #include <type_traits>
+
+ namespace device {
+diff -up chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc.missing-header-files chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc
+--- chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc.missing-header-files 2023-11-01 19:10:35.000000000 +0100
++++ chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc 2023-11-06 14:34:01.818869196 +0100
+@@ -3,6 +3,7 @@
+ // found in the LICENSE file.
+
+ #include "skia/ext/skcolorspace_trfn.h"
++#include <cmath>
+
+ #include <cmath>
+
+diff -up chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h.missing-header-files chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h
+--- chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h.missing-header-files 2023-11-01 19:10:36.000000000 +0100
++++ chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h 2023-11-06 14:34:01.809869004 +0100
+@@ -27,6 +27,7 @@
+ #ifndef ABSL_STRINGS_STRING_VIEW_H_
+ #define ABSL_STRINGS_STRING_VIEW_H_
+
++#include <cstdint>
+ #include <algorithm>
+ #include <cassert>
+ #include <cstddef>
+diff -up chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h.missing-header-files chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h
+--- chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h.missing-header-files 2023-11-01 19:11:59.000000000 +0100
++++ chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h 2023-11-06 14:34:01.810869025 +0100
+@@ -10,6 +10,7 @@
+ #ifndef GLSLANG_SHADERVARS_H_
+ #define GLSLANG_SHADERVARS_H_
+
++#include <cstdint>
+ #include <algorithm>
+ #include <array>
+ #include <cstdint>
+diff -up chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.missing-header-files chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h
+--- chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.missing-header-files 2023-11-01 19:10:37.000000000 +0100
++++ chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h 2023-11-06 14:34:01.810869025 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <array>
+ #include <cstdint>
+ #include <functional>
+diff -up chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.missing-header-files chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h
+--- chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.missing-header-files 2023-11-01 19:13:50.000000000 +0100
++++ chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h 2023-11-06 14:34:01.810869025 +0100
+@@ -15,6 +15,7 @@
+ #ifndef SRC_TINT_LANG_SPIRV_READER_AST_PARSER_NAMER_H_
+ #define SRC_TINT_LANG_SPIRV_READER_AST_PARSER_NAMER_H_
+
++#include <cstdint>
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h.missing-header-files chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h
+--- chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h.missing-header-files 2023-11-01 19:11:20.000000000 +0100
++++ chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h 2023-11-06 14:34:01.819869217 +0100
+@@ -5,6 +5,7 @@
+ #ifndef IPCZ_SRC_IPCZ_ROUTER_LINK_H_
+ #define IPCZ_SRC_IPCZ_ROUTER_LINK_H_
+
++#include <memory>
+ #include <cstddef>
+ #include <functional>
+ #include <memory>
+diff -up chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc.missing-header-files chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc
+--- chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc.missing-header-files 2023-11-01 19:11:53.000000000 +0100
++++ chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -14,6 +14,7 @@
+ * limitations under the License.
+ */
+
++#include <cmath>
+ #include "cpp/palettes/tones.h"
+
+ #include "cpp/cam/cam.h"
+diff -up chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.missing-header-files chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h
+--- chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.missing-header-files 2023-11-01 19:11:59.000000000 +0100
++++ chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h 2023-11-06 14:34:01.810869025 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <functional>
+ #include <map>
+ #include <set>
+diff -up chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h.missing-header-files chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h
+--- chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h.missing-header-files 2023-11-01 19:14:48.000000000 +0100
++++ chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,8 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
++
+ namespace pdfium {
+ namespace annotation_flags {
+
+diff -up chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h.missing-header-files chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h
+--- chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h.missing-header-files 2023-11-01 19:12:02.000000000 +0100
++++ chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h 2023-11-06 14:34:01.813869089 +0100
+@@ -17,6 +17,7 @@ limitations under the License.
+ #define RUY_RUY_PROFILER_INSTRUMENTATION_H_
+
+ #ifdef RUY_PROFILER
++#include <string>
+ #include <cstdio>
+ #include <mutex>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp.missing-header-files chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp
+--- chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp.missing-header-files 2023-11-01 19:12:15.000000000 +0100
++++ chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp 2023-11-06 14:34:01.810869025 +0100
+@@ -17,6 +17,7 @@
+
+ #include "System/Debug.hpp"
+
++#include <cstdint>
+ #include <cstddef>
+ #include <cstdint>
+ #include <functional>
+diff -up chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.missing-header-files chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc
+--- chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.missing-header-files 2023-11-01 19:12:42.000000000 +0100
++++ chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc 2023-11-06 14:34:01.814869110 +0100
+@@ -45,6 +45,7 @@
+ #include "llvm/Support/SaveAndRestore.h"
+ #include "llvm/Support/raw_ostream.h"
+ #include <algorithm>
++#include <cstdint>
+ #include <string>
+ #include <sysexits.h>
+ #ifdef HAVE_BACKTRACE
+diff -up chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.missing-header-files chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h
+--- chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.missing-header-files 2023-11-01 19:13:20.000000000 +0100
++++ chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h 2023-11-06 14:34:01.813869089 +0100
+@@ -31,6 +31,7 @@ limitations under the License.
+ #ifndef TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
+ #define TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
+
++#include <cstdint>
+ #include <complex>
+ #include <deque>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.missing-header-files chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
+--- chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.missing-header-files 2023-11-01 19:12:45.000000000 +0100
++++ chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h 2023-11-06 14:34:01.817869174 +0100
+@@ -2884,6 +2884,7 @@ static void vma_aligned_free(void* VMA_N
+
+ // Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.
+ #if VMA_STATS_STRING_ENABLED
++#include <stdio.h>
+ static inline void VmaUint32ToStr(char* VMA_NOT_NULL outStr, size_t strLen, uint32_t num)
+ {
+ snprintf(outStr, strLen, "%u", static_cast<unsigned int>(num));
+diff -up chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc.missing-header-files chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc
+--- chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc.missing-header-files 2023-11-01 19:14:05.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -8,6 +8,8 @@
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
++#include <cstring>
++
+ #include "audio/utility/channel_mixer.h"
+
+ #include "audio/utility/channel_mixing_matrix.h"
+diff -up chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h.missing-header-files chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h
+--- chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h.missing-header-files 2023-11-01 19:14:06.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h 2023-11-06 14:34:01.819869217 +0100
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
+ #define COMMON_VIDEO_H264_SPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+ #include "rtc_base/bitstream_reader.h"
+
+diff -up chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h.missing-header-files chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h
+--- chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h.missing-header-files 2023-11-01 19:14:11.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h 2023-11-06 14:34:01.819869217 +0100
+@@ -11,6 +11,7 @@
+ #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+ #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+
++#include <cstdint>
+ #include <limits>
+
+ #include "absl/types/optional.h"
+diff -up chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-header-files chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
+--- chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-header-files 2023-11-01 19:14:12.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -10,6 +10,7 @@
+
+ #include "modules/video_coding/utility/ivf_file_reader.h"
+
++#include <cstring>
+ #include <string>
+ #include <vector>
+
+diff -up chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h.missing-header-files chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h
+--- chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,8 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
++
+ #include "base/component_export.h"
+ #include "ui/gfx/geometry/matrix3_f.h"
+
+diff -up chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h.missing-header-files chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h
+--- chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h 2023-11-06 14:34:01.812869068 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <array>
+ #include <cstddef>
+ #include <cstdint>
+diff -up chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h.missing-header-files chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h
+--- chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h 2023-11-06 14:34:01.819869217 +0100
+@@ -9,6 +9,8 @@
+
+ #include "ui/gfx/buffer_types.h"
+
++#include <cstdint>
++
+ namespace ui {
+
+ int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format);
diff --git a/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch b/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
new file mode 100644
index 0000000000000..61239e7f02276
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn.mnemonic-error chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn
+--- chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn.mnemonic-error 2023-12-19 18:14:43.027723832 +0100
++++ chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn 2023-12-19 18:39:47.492384620 +0100
+@@ -1731,8 +1731,6 @@ action_foreach("element_locator_test_pro
+ python_path_root = "${root_out_dir}/pyproto"
+ python_path_proto = "${python_path_root}/third_party/blink/renderer/core/lcp_critical_path_predictor"
+
+- mnemonic = "ELOC_PROTO"
+-
+ source_dir = "lcp_critical_path_predictor/test_proto"
+ sources = rebase_path([ "lcp_image_id.asciipb" ], "", source_dir)
+ sources += rebase_path([ "lcp_image_id_b.asciipb" ], "", source_dir)
diff --git a/srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch b/srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
similarity index 75%
rename from srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch
rename to srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
index b1d987adeff8d..332a91ad06b3d 100644
--- a/srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch
+++ b/srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
@@ -114,9 +114,9 @@ diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_per
+ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal};
}
- buttons.emplace_back(l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
-- ButtonType::kAllow, ui::ButtonStyle::kTonal);
+- ButtonType::kAllow, ui::ButtonStyle::kTonal, kAllowId);
+ buttons.emplace_back() = {l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
-+ ButtonType::kAllow, ui::ButtonStyle::kTonal};
++ ButtonType::kAllow, ui::ButtonStyle::kTonal, kAllowId};
return buttons;
}
@@ -145,55 +145,6 @@ diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_per
return buttons;
}
-diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.no_matching_constructor chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc
---- chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.no_matching_constructor 2023-11-29 22:39:53.000000000 +0100
-+++ chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc 2023-12-03 17:31:25.756420342 +0100
-@@ -63,18 +63,18 @@ EmbeddedPermissionPromptPreviouslyDenied
- std::vector<EmbeddedPermissionPromptPreviouslyDeniedView::ButtonConfiguration>
- EmbeddedPermissionPromptPreviouslyDeniedView::GetButtonsConfiguration() const {
- std::vector<ButtonConfiguration> buttons;
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_NOT_ALLOWING),
-- ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal};
-
- if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
-- ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal);
-+ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal};
- } else {
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
-- ButtonType::kAllow, ui::ButtonStyle::kTonal);
-+ ButtonType::kAllow, ui::ButtonStyle::kTonal};
- }
- return buttons;
- }
-diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.no_matching_constructor chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc
---- chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.no_matching_constructor 2023-11-29 22:39:53.000000000 +0100
-+++ chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc 2023-12-03 17:31:25.750420227 +0100
-@@ -57,13 +57,13 @@ EmbeddedPermissionPromptPreviouslyGrante
- std::vector<EmbeddedPermissionPromptPreviouslyGrantedView::ButtonConfiguration>
- EmbeddedPermissionPromptPreviouslyGrantedView::GetButtonsConfiguration() const {
- std::vector<ButtonConfiguration> buttons;
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_ALLOWING),
-- ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal};
-
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_STOP_ALLOWING),
-- ButtonType::kStopAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kStopAllowing, ui::ButtonStyle::kTonal};
- return buttons;
- }
-
diff -up chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc.no_matching_constructor chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc
--- chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc.no_matching_constructor 2023-11-29 22:39:54.000000000 +0100
+++ chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc 2023-12-03 17:31:25.750420227 +0100
@@ -246,18 +197,6 @@ diff -up chromium-120.0.6099.56/components/autofill/core/browser/webdata/autofil
if (type == ADDRESS_HOME_COUNTRY) {
country_code = base::UTF16ToUTF8(s.ColumnString16(1));
-diff -up chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc.no_matching_constructor chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc
---- chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc.no_matching_constructor 2023-11-29 22:39:58.000000000 +0100
-+++ chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc 2023-12-03 17:31:25.751420246 +0100
-@@ -630,7 +630,7 @@ void PasswordManager::OnUserModifiedNonP
- // |driver| might be empty on iOS or in tests.
- int driver_id = driver ? driver->GetId() : 0;
- possible_usernames_.Put(
-- PossibleUsernameFieldIdentifier(driver_id, renderer_id),
-+ PossibleUsernameFieldIdentifier{driver_id, renderer_id},
- PossibleUsernameData(GetSignonRealm(driver->GetLastCommittedURL()),
- renderer_id, value, base::Time::Now(), driver_id,
- autocomplete_attribute_has_username, is_likely_otp));
diff -up chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.no_matching_constructor chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc
--- chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.no_matching_constructor 2023-11-29 22:40:01.000000000 +0100
+++ chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc 2023-12-03 17:31:25.751420246 +0100
@@ -300,45 +239,6 @@ diff -up chromium-120.0.6099.56/content/browser/interest_group/interest_group_st
}
if (!interest_group_kanon_query.Succeeded()) {
return absl::nullopt;
-diff -up chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc.no_matching_constructor chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc
---- chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc.no_matching_constructor 2023-11-29 22:40:01.000000000 +0100
-+++ chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc 2023-12-03 20:49:28.059042672 +0100
-@@ -8685,7 +8685,7 @@ void RenderFrameHostImpl::SendFencedFram
- for (const blink::FencedFrame::ReportingDestination& destination :
- destinations) {
- SendFencedFrameReportingBeaconInternal(
-- DestinationEnumEvent(event_type, event_data), destination,
-+ DestinationEnumEvent{event_type, event_data}, destination,
- /*from_renderer=*/true, attribution_reporting_runtime_features);
- }
- }
-@@ -8720,7 +8720,7 @@ void RenderFrameHostImpl::SendFencedFram
- }
-
- SendFencedFrameReportingBeaconInternal(
-- DestinationURLEvent(destination_url),
-+ DestinationURLEvent{destination_url},
- blink::FencedFrame::ReportingDestination::kBuyer,
- /*from_renderer=*/true, attribution_reporting_runtime_features);
- }
-@@ -8820,7 +8820,7 @@ void RenderFrameHostImpl::MaybeSendFence
- data = info->data;
- }
- initiator_rfh->SendFencedFrameReportingBeaconInternal(
-- AutomaticBeaconEvent(event_type, data), destination,
-+ AutomaticBeaconEvent{event_type, data}, destination,
- /*from_renderer=*/false, attribution_reporting_features,
- navigation_request.GetNavigationId());
- }
-@@ -8832,7 +8832,7 @@ void RenderFrameHostImpl::MaybeSendFence
- for (blink::FencedFrame::ReportingDestination destination :
- info->destinations) {
- initiator_rfh->SendFencedFrameReportingBeaconInternal(
-- AutomaticBeaconEvent(event_type, info->data), destination,
-+ AutomaticBeaconEvent{event_type, info->data}, destination,
- /*from_renderer=*/false, info->attribution_reporting_runtime_features,
- navigation_request.GetNavigationId());
- }
diff -up chromium-120.0.6099.56/net/dns/host_resolver_cache.cc.no_matching_constructor chromium-120.0.6099.56/net/dns/host_resolver_cache.cc
--- chromium-120.0.6099.56/net/dns/host_resolver_cache.cc.no_matching_constructor 2023-11-29 22:40:07.000000000 +0100
+++ chromium-120.0.6099.56/net/dns/host_resolver_cache.cc 2023-12-03 17:31:25.754420303 +0100
@@ -740,3 +640,306 @@ diff -up chromium-120.0.6099.56/ui/gtk/gtk_ui.cc.no_matching_constructor chromiu
}
return config;
}
+diff -up chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.than chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc
+--- chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.than 2023-12-19 17:13:15.116949814 +0100
++++ chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc 2023-12-19 17:27:18.807102716 +0100
+@@ -66,17 +66,17 @@ EmbeddedPermissionPromptPreviouslyDenied
+ std::vector<EmbeddedPermissionPromptPreviouslyDeniedView::ButtonConfiguration>
+ EmbeddedPermissionPromptPreviouslyDeniedView::GetButtonsConfiguration() const {
+ std::vector<ButtonConfiguration> buttons;
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_NOT_ALLOWING),
+- ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal);
++ ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal};
+
+ if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
+- ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal, kAllowThisTimeId);
++ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal, kAllowThisTimeId};
+ } else {
+- buttons.emplace_back(l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
+- ButtonType::kAllow, ui::ButtonStyle::kTonal);
++ buttons.emplace_back() = {l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
++ ButtonType::kAllow, ui::ButtonStyle::kTonal};
+ }
+ return buttons;
+ }
+diff -up chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.than chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc
+--- chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.than 2023-12-19 17:39:17.818834020 +0100
++++ chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc 2023-12-19 17:44:15.346337876 +0100
+@@ -61,13 +61,13 @@ EmbeddedPermissionPromptPreviouslyGrante
+ std::vector<EmbeddedPermissionPromptPreviouslyGrantedView::ButtonConfiguration>
+ EmbeddedPermissionPromptPreviouslyGrantedView::GetButtonsConfiguration() const {
+ std::vector<ButtonConfiguration> buttons;
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_ALLOWING),
+- ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal);
++ ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal};
+
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_STOP_ALLOWING),
+- ButtonType::kStopAllowing, ui::ButtonStyle::kTonal, kStopAllowingId);
++ ButtonType::kStopAllowing, ui::ButtonStyle::kTonal, kStopAllowingId};
+ return buttons;
+ }
+
+diff -up chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc.than chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc
+--- chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc.than 2023-12-19 17:39:17.819834039 +0100
++++ chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc 2023-12-19 17:48:33.144389081 +0100
+@@ -666,7 +666,7 @@ void PasswordManager::OnUserModifiedNonP
+ it->second.last_change = base::Time::Now();
+ } else {
+ possible_usernames_.Put(
+- PossibleUsernameFieldIdentifier(driver_id, renderer_id),
++ PossibleUsernameFieldIdentifier{driver_id, renderer_id},
+ PossibleUsernameData(GetSignonRealm(driver->GetLastCommittedURL()),
+ renderer_id, value, base::Time::Now(), driver_id,
+ autocomplete_attribute_has_username,
+diff -up chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc.than chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc
+--- chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc.than 2023-12-19 17:39:17.825834156 +0100
++++ chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc 2023-12-19 17:53:43.153283847 +0100
+@@ -8561,7 +8561,7 @@ void RenderFrameHostImpl::SendFencedFram
+ for (const blink::FencedFrame::ReportingDestination& destination :
+ destinations) {
+ SendFencedFrameReportingBeaconInternal(
+- DestinationEnumEvent(event_type, event_data), destination,
++ DestinationEnumEvent{event_type, event_data}, destination,
+ attribution_reporting_runtime_features);
+ }
+ }
+@@ -8593,7 +8593,7 @@ void RenderFrameHostImpl::SendFencedFram
+ }
+
+ SendFencedFrameReportingBeaconInternal(
+- DestinationURLEvent(destination_url),
++ DestinationURLEvent{destination_url},
+ blink::FencedFrame::ReportingDestination::kBuyer,
+ attribution_reporting_runtime_features);
+ }
+@@ -8730,7 +8730,7 @@ void RenderFrameHostImpl::MaybeSendFence
+ data = info->data;
+ }
+ initiator_rfh->SendFencedFrameReportingBeaconInternal(
+- AutomaticBeaconEvent(event_type, data), destination,
++ AutomaticBeaconEvent{event_type, data}, destination,
+ attribution_reporting_features, navigation_request.GetNavigationId());
+ }
+ } else {
+@@ -8741,7 +8741,7 @@ void RenderFrameHostImpl::MaybeSendFence
+ for (blink::FencedFrame::ReportingDestination destination :
+ info->destinations) {
+ initiator_rfh->SendFencedFrameReportingBeaconInternal(
+- AutomaticBeaconEvent(event_type, info->data), destination,
++ AutomaticBeaconEvent{event_type, info->data}, destination,
+ info->attribution_reporting_runtime_features,
+ navigation_request.GetNavigationId());
+ }
+diff -up chromium-121.0.6167.57/base/nix/mime_util_xdg.cc.me chromium-121.0.6167.57/base/nix/mime_util_xdg.cc
+--- chromium-121.0.6167.57/base/nix/mime_util_xdg.cc.me 2024-01-21 16:54:15.261844448 +0100
++++ chromium-121.0.6167.57/base/nix/mime_util_xdg.cc 2024-01-21 16:55:48.705577424 +0100
+@@ -56,7 +56,7 @@ void LoadAllMimeCacheFiles(MimeTypeMap&
+ for (const auto& path : GetXDGDataSearchLocations(env.get())) {
+ FilePath mime_cache = path.Append("mime/mime.cache");
+ if (GetFileInfo(mime_cache, &info) && ParseMimeTypes(mime_cache, map)) {
+- files.emplace_back(mime_cache, info.last_modified);
++ files.emplace_back() = {mime_cache, info.last_modified};
+ }
+ }
+ }
+diff -up chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc.me chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc
+--- chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc.me 2024-01-21 18:11:31.397859608 +0100
++++ chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc 2024-01-21 18:20:07.715415037 +0100
+@@ -239,7 +239,7 @@ void WorkerWatcher::OnWorkerCreated(
+ DCHECK(insertion_result.second);
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&,
+ this](const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ AddFrameClientConnection(insertion_result.first->second.get(),
+@@ -248,7 +248,7 @@ void WorkerWatcher::OnWorkerCreated(
+ [&, this](blink::DedicatedWorkerToken dedicated_worker_token) {
+ ConnectDedicatedWorkerClient(insertion_result.first->second.get(),
+ dedicated_worker_token);
+- }),
++ }},
+ creator);
+ }
+
+@@ -265,7 +265,7 @@ void WorkerWatcher::OnBeforeWorkerDestro
+ // First disconnect the creator's node from this worker node.
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&,
+ this](const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ RemoveFrameClientConnection(worker_node.get(),
+@@ -274,7 +274,7 @@ void WorkerWatcher::OnBeforeWorkerDestro
+ [&, this](blink::DedicatedWorkerToken dedicated_worker_token) {
+ DisconnectDedicatedWorkerClient(worker_node.get(),
+ dedicated_worker_token);
+- }),
++ }},
+ creator);
+
+ // Disconnect all child workers before destroying the node.
+@@ -446,7 +446,7 @@ void WorkerWatcher::OnControlleeAdded(
+ const std::string& client_uuid,
+ const content::ServiceWorkerClientInfo& client_info) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ // For window clients, it is necessary to wait until the navigation
+ // has committed to a RenderFrameHost.
+@@ -484,7 +484,7 @@ void WorkerWatcher::OnControlleeAdded(
+ ConnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+ }
+- }),
++ }},
+ client_info);
+ }
+
+@@ -524,7 +524,7 @@ void WorkerWatcher::OnControlleeRemoved(
+ return;
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ RemoveFrameClientConnection(worker_node, render_frame_host_id);
+ },
+@@ -534,7 +534,7 @@ void WorkerWatcher::OnControlleeRemoved(
+ },
+ [&, this](blink::SharedWorkerToken shared_worker_token) {
+ DisconnectSharedWorkerClient(worker_node, shared_worker_token);
+- }),
++ }},
+ client);
+ }
+
+@@ -810,7 +810,7 @@ void WorkerWatcher::ConnectAllServiceWor
+
+ for (const auto& kv : it->second) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ AddFrameClientConnection(service_worker_node,
+ render_frame_host_id);
+@@ -822,7 +822,7 @@ void WorkerWatcher::ConnectAllServiceWor
+ [&, this](blink::SharedWorkerToken shared_worker_token) {
+ ConnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+- }),
++ }},
+ kv.second);
+ }
+ }
+@@ -837,7 +837,7 @@ void WorkerWatcher::DisconnectAllService
+
+ for (const auto& kv : it->second) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](
+ const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ RemoveFrameClientConnection(service_worker_node,
+@@ -851,7 +851,7 @@ void WorkerWatcher::DisconnectAllService
+ [&, this](const blink::SharedWorkerToken& shared_worker_token) {
+ DisconnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+- }),
++ }},
+ kv.second);
+ }
+ }
+diff -up chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc.me chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc
+--- chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc.me 2024-01-21 18:40:52.284389286 +0100
++++ chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc 2024-01-21 18:41:17.276840222 +0100
+@@ -764,7 +764,7 @@ FirstPartySetParser::ParseSetsFromEnterp
+ context.GetPolicySetsFromList(
+ policy.FindList(kFirstPartySetPolicyAdditionsField),
+ PolicySetType::kAddition));
+- return ParsedPolicySetLists(std::move(replacements), std::move(additions));
++ return ParsedPolicySetLists{std::move(replacements), std::move(additions)};
+ }();
+
+ context.PostProcessSetLists(set_lists);
+diff -up chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h.me chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h
+--- chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h.me 2024-01-21 19:30:00.536387844 +0100
++++ chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h 2024-01-21 20:29:50.236287514 +0100
+@@ -133,6 +133,7 @@ class CONTENT_EXPORT HeaderDirectFromSel
+
+ // The Ad-Auction-Signals response served by `origin`.
+ std::string response_json;
++ UnprocessedResponse(auto u, auto s) : origin(u), response_json(s) { }
+ };
+
+ // Information from ParseAndFind() calls used by ParseAndFindCompleted.
+diff -up chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc.me chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc
+--- chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc.me 2024-01-21 21:58:48.773366301 +0100
++++ chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc 2024-01-21 22:02:17.956086167 +0100
+@@ -360,10 +360,10 @@ ServiceWorkerMainResourceLoaderIntercept
+ }
+ auto* storage_partition = process->GetStoragePartition();
+
+- return absl::visit(base::Overloaded([&, this](auto token) {
++ return absl::visit(base::Overloaded{[&, this](auto token) {
+ return GetStorageKeyFromWorkerHost(storage_partition,
+ token, origin);
+- }),
++ }},
+ *worker_token_);
+ }
+
+diff -up chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc.me chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc
+--- chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc.me 2024-01-21 22:04:30.446454697 +0100
++++ chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc 2024-01-21 22:05:22.847391481 +0100
+@@ -870,7 +870,7 @@ ServiceWorkerContainerHost::GetClientTyp
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+ DCHECK(client_info_);
+ return absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [](GlobalRenderFrameHostId render_frame_host_id) {
+ return blink::mojom::ServiceWorkerClientType::kWindow;
+ },
+@@ -879,7 +879,7 @@ ServiceWorkerContainerHost::GetClientTyp
+ },
+ [](blink::SharedWorkerToken shared_worker_token) {
+ return blink::mojom::ServiceWorkerClientType::kSharedWorker;
+- }),
++ }},
+ *client_info_);
+ }
+
+diff -up chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc.me chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc
+--- chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc.me 2024-01-21 22:37:00.969416148 +0100
++++ chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc 2024-01-21 22:38:07.754528335 +0100
+@@ -251,7 +251,7 @@ void DedicatedWorkerHost::StartScriptLoa
+ RenderFrameHostImpl* creator_render_frame_host = nullptr;
+ DedicatedWorkerHost* creator_worker = nullptr;
+
+- absl::visit(base::Overloaded(
++ absl::visit(base::Overloaded{
+ [&](const GlobalRenderFrameHostId& render_frame_host_id) {
+ creator_render_frame_host =
+ RenderFrameHostImpl::FromID(render_frame_host_id);
+@@ -259,7 +259,7 @@ void DedicatedWorkerHost::StartScriptLoa
+ [&](blink::DedicatedWorkerToken dedicated_worker_token) {
+ creator_worker = service_->GetDedicatedWorkerHostFromToken(
+ dedicated_worker_token);
+- }),
++ }},
+ creator_);
+
+ if (!creator_render_frame_host && !creator_worker) {
diff --git a/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch b/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
new file mode 100644
index 0000000000000..3defc393c084f
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
@@ -0,0 +1,12 @@
+diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h.than chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h
+--- chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h.than 2023-12-04 10:20:45.350540897 +0100
++++ chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h 2023-12-04 10:23:17.335339670 +0100
+@@ -21,7 +21,7 @@ class FragmentDataIteratorBase {
+
+ public:
+ explicit FragmentDataIteratorBase(Head& head) : fragment_head_(head) {}
+- explicit FragmentDataIteratorBase(nullptr_t) {}
++ explicit FragmentDataIteratorBase(std::nullptr_t) {}
+
+ Data* GetFragmentData() const {
+ return !IsDone() ? &fragment_head_.at(idx_) : nullptr;
diff --git a/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch b/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
new file mode 100644
index 0000000000000..c2bf5b489f7a1
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
@@ -0,0 +1,77 @@
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py.me 2024-01-15 20:48:28.177397102 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py 2024-01-15 20:48:46.427768328 +0100
+@@ -18,7 +18,7 @@ class HTMLGenerationController(object):
+
+ def GetHTMLForInlineStylesheet(self, contents):
+ if self.current_module is None:
+- if re.search('url\(.+\)', contents):
++ if re.search(r'url\(.+\)', contents):
+ raise Exception(
+ 'Default HTMLGenerationController cannot handle inline style urls')
+ return contents
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py.me 2024-01-15 20:49:39.363845083 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py 2024-01-15 20:49:57.407212098 +0100
+@@ -4,4 +4,4 @@
+
+
+ def EscapeJSIfNeeded(js):
+- return js.replace('</script>', '<\/script>')
++ return js.replace(r'</script>', r'<\/script>')
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py.me 2024-01-15 20:50:11.819505254 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py 2024-01-15 20:50:38.611050213 +0100
+@@ -293,6 +293,6 @@ class HTMLModuleParser():
+ html = ''
+ else:
+ if html.find('< /script>') != -1:
+- raise Exception('Escape script tags with <\/script>')
++ raise Exception(r'Escape script tags with <\/script>')
+
+ return HTMLModuleParserResults(html)
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py.me 2024-01-15 20:48:59.917042709 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py 2024-01-15 20:49:24.402540761 +0100
+@@ -60,7 +60,7 @@ class ParsedStyleSheet(object):
+ return 'url(data:image/%s;base64,%s)' % (ext[1:], data.decode('utf-8'))
+
+ # I'm assuming we only have url()'s associated with images
+- return re.sub('url\((?P<quote>"|\'|)(?P<url>[^"\'()]*)(?P=quote)\)',
++ return re.sub(r'url\((?P<quote>"|\'|)(?P<url>[^"\'()]*)(?P=quote)\)',
+ InlineUrl, self.contents)
+
+ def AppendDirectlyDependentFilenamesTo(self, dependent_filenames):
+@@ -72,7 +72,7 @@ class ParsedStyleSheet(object):
+ raise Exception('@imports are not supported')
+
+ matches = re.findall(
+- 'url\((?:["|\']?)([^"\'()]*)(?:["|\']?)\)',
++ r'url\((?:["|\']?)([^"\'()]*)(?:["|\']?)\)',
+ self.contents)
+
+ def resolve_url(url):
+diff -up chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py.me chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py
+--- chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py.me 2024-01-15 20:50:56.810420400 +0100
++++ chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py 2024-01-15 20:52:33.506387261 +0100
+@@ -28,7 +28,7 @@ import platform
+ import sys
+
+ def glob_slash(dirname):
+- """Like regular glob but replaces \ with / in returned paths."""
++ """Like regular glob but replaces \\ with / in returned paths."""
+ return [s.replace('\\', '/') for s in glob.glob(dirname)]
+
+ def main():
+diff -up chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py.me chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py
+--- chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py.me 2024-01-15 20:52:38.016479000 +0100
++++ chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py 2024-01-15 20:52:48.863699640 +0100
+@@ -28,7 +28,7 @@ import platform
+ import sys
+
+ def glob_slash(dirname):
+- """Like regular glob but replaces \ with / in returned paths."""
++ """Like regular glob but replaces \\ with / in returned paths."""
+ return [s.replace('\\', '/') for s in glob.glob(dirname)]
+
+ def main():
diff --git a/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch b/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
new file mode 100644
index 0000000000000..4014f9a827648
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
@@ -0,0 +1,22 @@
+--- a/build/config/clang/BUILD.gn
++++ b/build/config/clang/BUILD.gn
+@@ -128,14 +128,15 @@
+ } else if (is_apple) {
+ _dir = "darwin"
+ } else if (is_linux || is_chromeos) {
++ _dir = "linux"
+ if (current_cpu == "x64") {
+- _dir = "x86_64-unknown-linux-gnu"
++ _suffix = "-x86_64"
+ } else if (current_cpu == "x86") {
+- _dir = "i386-unknown-linux-gnu"
++ _suffix = "-i386"
+ } else if (current_cpu == "arm") {
+- _dir = "armv7-unknown-linux-gnueabihf"
++ _suffix = "-armhf"
+ } else if (current_cpu == "arm64") {
+- _dir = "aarch64-unknown-linux-gnu"
++ _suffix = "-aarch64"
+ } else {
+ assert(false) # Unhandled cpu type
+ }
diff --git a/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch b/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
new file mode 100644
index 0000000000000..25c3422982933
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
@@ -0,0 +1,10 @@
+--- a/build/rust/std/BUILD.gn
++++ b/build/rust/std/BUILD.gn
+@@ -100,7 +100,6 @@
+ # don't need to pass to the C++ linker because they're used for specialized
+ # purposes.
+ skip_stdlib_files = [
+- "profiler_builtins",
+ "rustc_std_workspace_alloc",
+ "rustc_std_workspace_core",
+ "rustc_std_workspace_std",
diff --git a/srcpkgs/chromium/patches/chromium-121-system-libxml.patch b/srcpkgs/chromium/patches/chromium-121-system-libxml.patch
new file mode 100644
index 0000000000000..da463c26d323a
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-system-libxml.patch
@@ -0,0 +1,24 @@
+diff -up chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor.h.me chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor.h
+--- chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor.h.me 2024-02-06 08:22:36.013021582 +0100
++++ chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor.h 2024-02-06 08:23:08.281607499 +0100
+@@ -77,7 +77,7 @@ class XSLTProcessor final : public Scrip
+
+ void reset();
+
+- static void ParseErrorFunc(void* user_data, const xmlError*);
++ static void ParseErrorFunc(void* user_data, xmlError*);
+ static void GenericErrorFunc(void* user_data, const char* msg, ...);
+
+ // Only for libXSLT callbacks
+diff -up chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc.me chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
+--- chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc.me 2024-02-06 08:14:32.368066214 +0100
++++ chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc 2024-02-06 08:23:08.282607518 +0100
+@@ -66,7 +66,7 @@ void XSLTProcessor::GenericErrorFunc(voi
+ // It would be nice to do something with this error message.
+ }
+
+-void XSLTProcessor::ParseErrorFunc(void* user_data, const xmlError* error) {
++void XSLTProcessor::ParseErrorFunc(void* user_data, xmlError* error) {
+ FrameConsole* console = static_cast<FrameConsole*>(user_data);
+ if (!console)
+ return;
diff --git a/srcpkgs/chromium/patches/chromium-120-typename.patch b/srcpkgs/chromium/patches/chromium-121-typename.patch
similarity index 78%
rename from srcpkgs/chromium/patches/chromium-120-typename.patch
rename to srcpkgs/chromium/patches/chromium-121-typename.patch
index 9a2d878b12b54..e83e62c60a54e 100644
--- a/srcpkgs/chromium/patches/chromium-120-typename.patch
+++ b/srcpkgs/chromium/patches/chromium-121-typename.patch
@@ -203,3 +203,57 @@ diff -up chromium-120.0.6099.56/third_party/blink/renderer/bindings/core/v8/asyn
ExceptionState& exception_state) = 0;
};
+diff -up chromium-121.0.6167.57/base/functional/bind_internal.h.me chromium-121.0.6167.57/base/functional/bind_internal.h
+--- chromium-121.0.6167.57/base/functional/bind_internal.h.me 2024-01-21 16:10:09.809037581 +0100
++++ chromium-121.0.6167.57/base/functional/bind_internal.h 2024-01-21 16:46:33.759397303 +0100
+@@ -1533,11 +1533,11 @@ template <int i,
+ typename Param>
+ struct ParamCanBeBound {
+ private:
+- using UnwrappedParam = BindArgument<i>::template ForwardedAs<
++ using UnwrappedParam = typename BindArgument<i>::template ForwardedAs<
+ Unwrapped>::template ToParamWithType<Param>;
+- using ParamStorage = BindArgument<i>::template ToParamWithType<
++ using ParamStorage = typename BindArgument<i>::template ToParamWithType<
+ Param>::template StoredAs<Storage>;
+- using BoundStorage =
++ using BoundStorage = typename
+ BindArgument<i>::template BoundAs<Arg>::template StoredAs<Storage>;
+
+ // We forbid callbacks from using raw_ptr as a parameter. However, we allow
+diff -up chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h
+--- chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me 2024-01-21 17:23:37.786606428 +0100
++++ chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h 2024-01-21 17:23:58.582127103 +0100
+@@ -90,7 +90,7 @@ template <typename Container>
+ { c[i] } -> std::same_as<typename Container::reference>;
+ }
+ struct ArrayTraits<Container> {
+- using Element = Container::value_type;
++ using Element = typename Container::value_type;
+
+ // vector-like containers have no built-in null.
+ static bool IsNull(const Container& c) { return false; }
+diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h
+--- chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me 2024-01-21 17:33:40.030897838 +0100
++++ chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h 2024-01-21 17:34:11.518705266 +0100
+@@ -25,7 +25,7 @@ void SetExecutionRequestTemplate(
+
+ // Request is set by the feature and should always be typed.
+ auto typed_request =
+- static_cast<const FeatureType::Request&>(request_metadata);
++ static_cast<const typename FeatureType::Request&>(request_metadata);
+ *(logging_data->mutable_request_data()) = typed_request;
+ }
+
+diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h
+--- chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me 2024-01-21 17:32:42.367417619 +0100
++++ chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h 2024-01-21 17:33:25.732531198 +0100
+@@ -29,7 +29,7 @@ class ModelQualityLogEntry {
+ }
+
+ template <typename FeatureType>
+- FeatureType::Quality* quality_data() {
++ typename FeatureType::Quality* quality_data() {
+ return FeatureType::GetLoggingData(*log_ai_data_request_)
+ ->mutable_quality_data();
+ }
diff --git a/srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch b/srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
similarity index 75%
rename from srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch
rename to srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
index b06e29f29047a..192b0692fbf73 100644
--- a/srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch
+++ b/srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
@@ -25,27 +25,29 @@ diff -up chromium-115.0.5790.32/content/browser/service_worker/service_worker_co
DCHECK(document_url.is_valid());
TRACE_EVENT1("ServiceWorker",
-diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc
---- chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me 2023-12-03 22:17:50.922083200 +0100
-+++ chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-03 22:22:55.437484343 +0100
-@@ -3447,7 +3447,8 @@ void GridLayoutAlgorithm::PlaceGridItems
+diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc
+--- chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than 2023-12-19 17:57:56.205197246 +0100
++++ chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-19 18:10:13.778634531 +0100
+@@ -3527,8 +3527,8 @@ void GridLayoutAlgorithm::PlaceGridItems
DCHECK(out_row_break_between);
- const auto& container_space = ConstraintSpace();
+ const auto& container_space = GetConstraintSpace();
- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData();
+-
+ const auto& [grid_items, l_d, tree_size] = sizing_tree.TreeRootData();
+ const auto& layout_data = l_d;
-
const auto* cached_layout_subtree = container_space.GetGridLayoutSubtree();
const auto container_writing_direction =
-@@ -3611,7 +3612,9 @@ void GridLayoutAlgorithm::PlaceGridItems
+ container_space.GetWritingDirection();
+@@ -3691,8 +3691,9 @@ void GridLayoutAlgorithm::PlaceGridItems
// TODO(ikilpatrick): Update |SetHasSeenAllChildren| and early exit if true.
- const auto& constraint_space = ConstraintSpace();
+ const auto& constraint_space = GetConstraintSpace();
- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData();
+-
+ const auto& [g_i, l_d, tree_size] = sizing_tree.TreeRootData();
+ const auto& grid_items = g_i;
+ const auto& layout_data = l_d;
-
const auto* cached_layout_subtree = constraint_space.GetGridLayoutSubtree();
const auto container_writing_direction =
+ constraint_space.GetWritingDirection();
diff --git a/srcpkgs/chromium/patches/gcc13-wnoerror.patch b/srcpkgs/chromium/patches/gcc13-wnoerror.patch
deleted file mode 100644
index c069aa41b2d09..0000000000000
--- a/srcpkgs/chromium/patches/gcc13-wnoerror.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-https://gn.googlesource.com/gn/+/c7b223bfb225ce87a72a244d016ffdfcf227fa5e%5E%21/
-Ignore build warning -Werror=redundant-move
-
-gcc-13 complains with:
-error: redundant move in return statement [-Werror=redundant-move]
-
-We cannot fix the code, because both old versions of gcc and the windows
-toolchain fails to build.
-index adb622a..232e536 100755
---- a/tools/gn/build/gen.py
-+++ b/tools/gn/build/gen.py
-
-@@ -472,6 +472,8 @@
- # flags not supported by gcc/g++.
- if cxx == 'clang++':
- cflags.extend(['-Wrange-loop-analysis', '-Wextra-semi-stmt'])
-+ else:
-+ cflags.append('-Wno-redundant-move')
-
- if platform.is_linux() or platform.is_mingw() or platform.is_msys():
- ldflags.append('-Wl,--as-needed')
diff --git a/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch b/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
deleted file mode 100644
index dae1adde0bc66..0000000000000
--- a/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/build/linux/unbundle/ffmpeg.gn b/build/linux/unbundle/ffmpeg.gn
-index 16e20744706..6a079b32221 100644
---- a/build/linux/unbundle/ffmpeg.gn
-+++ b/build/linux/unbundle/ffmpeg.gn
-@@ -12,6 +12,7 @@ pkg_config("system_ffmpeg") {
- "libavformat",
- "libavutil",
- ]
-+ defines = [ "av_stream_get_first_dts(stream)=stream->first_dts" ]
- }
-
- buildflag_header("ffmpeg_features") {
diff --git a/srcpkgs/chromium/template b/srcpkgs/chromium/template
index 5613fa3813822..995c194d17f6b 100644
--- a/srcpkgs/chromium/template
+++ b/srcpkgs/chromium/template
@@ -1,15 +1,15 @@
# Template file for 'chromium'
pkgname=chromium
# See https://chromiumdash.appspot.com/releases?platform=Linux for the latest version
-version=120.0.6099.129
+version=121.0.6167.160
revision=1
archs="i686* x86_64* aarch64* armv7l*"
hostmakedepends="
- $(vopt_if clang "clang lld llvm15")
+ $(vopt_if clang "clang17 lld17 llvm15")
bison git gperf hwids ninja nodejs perl pkg-config python3
- libepoxy-devel libevent-devel libglib-devel"
+ libepoxy-devel libevent-devel libglib-devel rust"
makedepends="
- alsa-lib-devel libdav1d-devel brotli-devel cups-devel elfutils-devel ffmpeg-devel
+ alsa-lib-devel libdav1d-devel brotli-devel cups-devel elfutils-devel
fontconfig-devel freetype-devel gtk+3-devel libXScrnSaver-devel
libXcomposite-devel libXcursor-devel libXdamage-devel libXi-devel libXrandr-devel
libavif-devel libcap-devel libcurl-devel libdrm-devel libevent-devel
@@ -18,6 +18,7 @@ makedepends="
libxslt-devel minizip-devel mit-krb5-devel nss-devel opus-devel
pciutils-devel snappy-devel speech-dispatcher-devel speex-devel
xcb-proto zlib-devel libaom-devel libffi-devel libevdev-devel
+ compiler-rt
$(vopt_if pipewire pipewire-devel)
$(vopt_if pulseaudio pulseaudio-devel)
$(vopt_if sndio sndio-devel)"
@@ -27,7 +28,7 @@ maintainer="Duncaen <duncaen@voidlinux.org>"
license="BSD-3-Clause"
homepage="https://www.chromium.org/"
distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/${pkgname}-${version}.tar.xz"
-checksum=be36d5abecfafdc68d9b27b0bee65136316610a295e844b99483a7520b245f85
+checksum=4586673899383d30e9d95fa3a9c5f8160f32a9d5789e40be82abf3e4dd9cc3df
lib32disabled=yes
@@ -50,7 +51,7 @@ if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" libX11-devel libxcb-devel pciutils-devel libXext-devel libglvnd-devel
libjpeg-turbo-devel libXi-devel nss-devel libpng-devel libwebp-devel
libxml2-devel $(vopt_if pulseaudio pulseaudio-devel) libxslt-devel libxkbcommon-devel
- $(vopt_if pipewire pipewire-devel) ffmpeg-devel opus-devel pango-devel libva-devel
+ $(vopt_if pipewire pipewire-devel) opus-devel pango-devel libva-devel
libcurl-devel snappy-devel libXrandr-devel libXcomposite-devel cups-devel
mit-krb5-devel alsa-lib-devel libXdamage-devel libepoxy-devel libevdev-devel
libavif-devel libaom-devel libdav1d-devel libflac-devel
@@ -133,7 +134,7 @@ _setup_toolchain() {
}
do_configure() {
- local system="" conf=()
+ local system=() conf=()
# compile gn early, so it can be used to generate gni stuff
AR="ar" CC=$CC_FOR_BUILD CXX=$CXX_FOR_BUILD LD=$CXX_FOR_BUILD \
@@ -153,8 +154,9 @@ do_configure() {
# XXX: harfbuzz-ng use builtin one until system-wide is updated >=3.0.0
# libcxx https://github.com/llvm/llvm-project/issues/61705:
# snappy
- system="
- ffmpeg
+ # ffmpeg: system ffmpeg is too old and makes the ffmpeg update not require
+ # rebuilding chromium
+ system=(
flac
fontconfig
freetype
@@ -166,12 +168,12 @@ do_configure() {
libxml
libxslt
opus
- "
+ )
# remove build scripts for system provided dependencies - basically does the
# same as the bundeled script to remove bundeled libs, but this way we don't
# have to list the remaining libs
- for LIB in ${system} libjpeg_turbo; do
+ for LIB in "${system[@]}" libjpeg_turbo; do
find "third_party/$LIB" -type f \
\! -path "third_party/$LIB/chromium/*" \
\! -path "third_party/$LIB/google/*" \
@@ -182,13 +184,13 @@ do_configure() {
done
# switch to system provided dependencies
- build/linux/unbundle/replace_gn_files.py --system-libraries ${system}
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${system[@]}"
third_party/libaddressinput/chromium/tools/update-strings.py
+ local clang_version="$(clang -dumpversion)"
conf=(
'enable_nacl=false'
- 'enable_rust=false'
'use_sysroot=false'
@@ -198,12 +200,15 @@ do_configure() {
"use_lld=$(vopt_if clang true false)"
'clang_use_chrome_plugins=false'
'clang_base_path="/usr"'
+ "clang_version=\"${clang_version%%.*}\""
"gold_path=\"${XBPS_CROSS_BASE}/usr/bin/ld.gold\""
"use_custom_libcxx=$(vopt_if libcxx true false)" # https://github.com/llvm/llvm-project/issues/61705
'use_gold=false'
+ 'enable_rust=true'
'rust_sysroot_absolute="/usr"'
+ "rustc_version=\"$(rustc --version)\""
# is_debug makes the build a debug build, changes some things.
# might be useful for real debugging vs just debug symbols.
@@ -293,6 +298,9 @@ do_configure() {
}
do_build() {
+ # XXX: need for error: the option `Z` is only accepted on the nightly compiler
+ export RUSTC_BOOTSTRAP=1
+
_setup_toolchain
CCACHE_SLOPPINESS=include_file_mtime ninja -C out/Release ${makejobs} chrome chromedriver.unstripped chrome_crashpad_handler
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PR PATCH] [Updated] chromium: update to 121.0.6167.85.
2024-01-25 15:39 [PR PATCH] chromium: update to 121.0.6167.85 Duncaen
2024-02-10 23:38 ` [PR PATCH] [Updated] " Duncaen
2024-02-11 1:46 ` Duncaen
@ 2024-02-12 0:49 ` Duncaen
2024-02-12 0:50 ` [PR PATCH] [Closed]: " Duncaen
3 siblings, 0 replies; 5+ messages in thread
From: Duncaen @ 2024-02-12 0:49 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 411 bytes --]
There is an updated pull request by Duncaen against master on the void-packages repository
https://github.com/Duncaen/void-packages chromium-121
https://github.com/void-linux/void-packages/pull/48367
chromium: update to 121.0.6167.85.
[ci skip]
* [ ] x86_64-glibc
* [ ] x86_64-musl
* [ ] aarch64-musl
* [ ] i686
A patch file from https://github.com/void-linux/void-packages/pull/48367.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-chromium-121-48367.patch --]
[-- Type: text/x-diff, Size: 134344 bytes --]
From a14551296805e31038014e3d9c431994bbe3a23f Mon Sep 17 00:00:00 2001
From: Duncaen <duncaen@voidlinux.org>
Date: Thu, 25 Jan 2024 16:07:07 +0100
Subject: [PATCH] chromium: update to 121.0.6167.85.
---
...ERT-roll-src-third_party-ffmpeg-m102.patch | 333 -------------
...oll-src-third_party-ffmpeg-m102.patch.args | 1 -
...ERT-roll-src-third_party-ffmpeg-m106.patch | 55 ---
...oll-src-third_party-ffmpeg-m106.patch.args | 1 -
.../patches/chromium-119-ffmpeg-4.4.patch | 20 -
.../chromium-120-arm64-memory_tagging.patch | 14 -
...romium-120-el7-clang-version-warning.patch | 16 -
.../chromium-120-gn-workaround-atspi.patch | 13 -
| 459 ------------------
.../patches/chromium-121-constexpr.patch | 12 +
...romium-121-el7-clang-version-warning.patch | 15 +
...onstructor-involving-anonymous-union.patch | 12 +
| 459 ++++++++++++++++++
.../patches/chromium-121-mnemonic-error.patch | 12 +
...hromium-121-no_matching_constructor.patch} | 407 ++++++++++++----
...-121-nullptr_t-without-namespace-std.patch | 12 +
...-121-python3-invalid-escape-sequence.patch | 77 +++
.../patches/chromium-121-rust-clang_lib.patch | 22 +
...m-121-rust-without-profiler_builtins.patch | 10 +
.../patches/chromium-121-system-libxml.patch | 24 +
...name.patch => chromium-121-typename.patch} | 54 +++
...around_clang_bug-structured_binding.patch} | 20 +-
srcpkgs/chromium/patches/cross-build.patch | 11 -
srcpkgs/chromium/patches/gcc13-wnoerror.patch | 21 -
...undle-ffmpeg-av_stream_get_first_dts.patch | 12 -
srcpkgs/chromium/template | 36 +-
26 files changed, 1047 insertions(+), 1081 deletions(-)
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
delete mode 100644 srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
delete mode 100644 srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
delete mode 100644 srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-constexpr.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
rename srcpkgs/chromium/patches/{chromium-120-no_matching_constructor.patch => chromium-121-no_matching_constructor.patch} (75%)
create mode 100644 srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
create mode 100644 srcpkgs/chromium/patches/chromium-121-system-libxml.patch
rename srcpkgs/chromium/patches/{chromium-120-typename.patch => chromium-121-typename.patch} (78%)
rename srcpkgs/chromium/patches/{chromium-120-workaround_clang_bug-structured_binding.patch => chromium-121-workaround_clang_bug-structured_binding.patch} (75%)
delete mode 100644 srcpkgs/chromium/patches/gcc13-wnoerror.patch
delete mode 100644 srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
deleted file mode 100644
index e739b40a2733c..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch
+++ /dev/null
@@ -1,333 +0,0 @@
-From 6e554a30893150793c2638e3689cf208ffc8e375 Mon Sep 17 00:00:00 2001
-From: Dale Curtis <dalecurtis@chromium.org>
-Date: Sat, 2 Apr 2022 05:13:53 +0000
-Subject: [PATCH] Roll src/third_party/ffmpeg/ 574c39cce..32b2d1d526 (1125
- commits)
-
-https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/574c39cce323..32b2d1d526
-
-Created with:
- roll-dep src/third_party/ffmpeg
-
-Fixed: 1293918
-Cq-Include-Trybots: luci.chromium.try:mac_chromium_asan_rel_ng,linux_chromium_asan_rel_ng,linux_chromium_chromeos_asan_rel_ng
-Change-Id: I41945d0f963e3d1f65940067bac22f63b68e37d2
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3565647
-Auto-Submit: Dale Curtis <dalecurtis@chromium.org>
-Reviewed-by: Dan Sanders <sandersd@chromium.org>
-Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#988253}
----
- .../clear_key_cdm/ffmpeg_cdm_audio_decoder.cc | 29 ++++++++++---------
- media/ffmpeg/ffmpeg_common.cc | 11 +++----
- media/filters/audio_file_reader.cc | 9 +++---
- media/filters/audio_file_reader_unittest.cc | 6 ++--
- .../filters/audio_video_metadata_extractor.cc | 11 +++++--
- .../filters/ffmpeg_aac_bitstream_converter.cc | 7 +++--
- ...ffmpeg_aac_bitstream_converter_unittest.cc | 2 +-
- media/filters/ffmpeg_audio_decoder.cc | 13 +++++----
- 8 files changed, 51 insertions(+), 37 deletions(-)
-
-diff --git a/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc b/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-index e4fc3f460e2..9b1ad9f7675 100644
---- a/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-+++ b/media/cdm/library_cdm/clear_key_cdm/ffmpeg_cdm_audio_decoder.cc
-@@ -74,7 +74,7 @@ void CdmAudioDecoderConfigToAVCodecContext(
- codec_context->sample_fmt = AV_SAMPLE_FMT_NONE;
- }
-
-- codec_context->channels = config.channel_count;
-+ codec_context->ch_layout.nb_channels = config.channel_count;
- codec_context->sample_rate = config.samples_per_second;
-
- if (config.extra_data) {
-@@ -124,8 +124,8 @@ void CopySamples(cdm::AudioFormat cdm_format,
- case cdm::kAudioFormatPlanarS16:
- case cdm::kAudioFormatPlanarF32: {
- const int decoded_size_per_channel =
-- decoded_audio_size / av_frame.channels;
-- for (int i = 0; i < av_frame.channels; ++i) {
-+ decoded_audio_size / av_frame.ch_layout.nb_channels;
-+ for (int i = 0; i < av_frame.ch_layout.nb_channels; ++i) {
- memcpy(output_buffer, av_frame.extended_data[i],
- decoded_size_per_channel);
- output_buffer += decoded_size_per_channel;
-@@ -185,13 +185,14 @@ bool FFmpegCdmAudioDecoder::Initialize(
- // Success!
- decoding_loop_ = std::make_unique<FFmpegDecodingLoop>(codec_context_.get());
- samples_per_second_ = config.samples_per_second;
-- bytes_per_frame_ = codec_context_->channels * config.bits_per_channel / 8;
-+ bytes_per_frame_ =
-+ codec_context_->ch_layout.nb_channels * config.bits_per_channel / 8;
- output_timestamp_helper_ =
- std::make_unique<AudioTimestampHelper>(config.samples_per_second);
- is_initialized_ = true;
-
- // Store initial values to guard against midstream configuration changes.
-- channels_ = codec_context_->channels;
-+ channels_ = codec_context_->ch_layout.nb_channels;
- av_sample_format_ = codec_context_->sample_fmt;
-
- return true;
-@@ -291,17 +292,19 @@ cdm::Status FFmpegCdmAudioDecoder::DecodeBuffer(
- for (auto& frame : audio_frames) {
- int decoded_audio_size = 0;
- if (frame->sample_rate != samples_per_second_ ||
-- frame->channels != channels_ || frame->format != av_sample_format_) {
-+ frame->ch_layout.nb_channels != channels_ ||
-+ frame->format != av_sample_format_) {
- DLOG(ERROR) << "Unsupported midstream configuration change!"
- << " Sample Rate: " << frame->sample_rate << " vs "
-- << samples_per_second_ << ", Channels: " << frame->channels
-- << " vs " << channels_ << ", Sample Format: " << frame->format
-- << " vs " << av_sample_format_;
-+ << samples_per_second_
-+ << ", Channels: " << frame->ch_layout.nb_channels << " vs "
-+ << channels_ << ", Sample Format: " << frame->format << " vs "
-+ << av_sample_format_;
- return cdm::kDecodeError;
- }
-
- decoded_audio_size = av_samples_get_buffer_size(
-- nullptr, codec_context_->channels, frame->nb_samples,
-+ nullptr, codec_context_->ch_layout.nb_channels, frame->nb_samples,
- codec_context_->sample_fmt, 1);
- if (!decoded_audio_size)
- continue;
-@@ -320,9 +323,9 @@ bool FFmpegCdmAudioDecoder::OnNewFrame(
- size_t* total_size,
- std::vector<std::unique_ptr<AVFrame, ScopedPtrAVFreeFrame>>* audio_frames,
- AVFrame* frame) {
-- *total_size += av_samples_get_buffer_size(nullptr, codec_context_->channels,
-- frame->nb_samples,
-- codec_context_->sample_fmt, 1);
-+ *total_size += av_samples_get_buffer_size(
-+ nullptr, codec_context_->ch_layout.nb_channels, frame->nb_samples,
-+ codec_context_->sample_fmt, 1);
- audio_frames->emplace_back(av_frame_clone(frame));
- return true;
- }
-diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc
-index 87ca8969626..76f03d6608e 100644
---- a/media/ffmpeg/ffmpeg_common.cc
-+++ b/media/ffmpeg/ffmpeg_common.cc
-@@ -345,10 +345,11 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
- codec_context->sample_fmt, codec_context->codec_id);
-
- ChannelLayout channel_layout =
-- codec_context->channels > 8
-+ codec_context->ch_layout.nb_channels > 8
- ? CHANNEL_LAYOUT_DISCRETE
-- : ChannelLayoutToChromeChannelLayout(codec_context->channel_layout,
-- codec_context->channels);
-+ : ChannelLayoutToChromeChannelLayout(
-+ codec_context->ch_layout.u.mask,
-+ codec_context->ch_layout.nb_channels);
-
- int sample_rate = codec_context->sample_rate;
- switch (codec) {
-@@ -401,7 +402,7 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
- extra_data, encryption_scheme, seek_preroll,
- codec_context->delay);
- if (channel_layout == CHANNEL_LAYOUT_DISCRETE)
-- config->SetChannelsForDiscrete(codec_context->channels);
-+ config->SetChannelsForDiscrete(codec_context->ch_layout.nb_channels);
-
- #if BUILDFLAG(ENABLE_PLATFORM_AC3_EAC3_AUDIO)
- // These are bitstream formats unknown to ffmpeg, so they don't have
-@@ -470,7 +471,7 @@ void AudioDecoderConfigToAVCodecContext(const AudioDecoderConfig& config,
-
- // TODO(scherkus): should we set |channel_layout|? I'm not sure if FFmpeg uses
- // said information to decode.
-- codec_context->channels = config.channels();
-+ codec_context->ch_layout.nb_channels = config.channels();
- codec_context->sample_rate = config.samples_per_second();
-
- if (config.extra_data().empty()) {
-diff --git a/media/filters/audio_file_reader.cc b/media/filters/audio_file_reader.cc
-index 5f257bdfaa6..e1be5aa9a5b 100644
---- a/media/filters/audio_file_reader.cc
-+++ b/media/filters/audio_file_reader.cc
-@@ -113,14 +113,15 @@ bool AudioFileReader::OpenDecoder() {
-
- // Verify the channel layout is supported by Chrome. Acts as a sanity check
- // against invalid files. See http://crbug.com/171962
-- if (ChannelLayoutToChromeChannelLayout(codec_context_->channel_layout,
-- codec_context_->channels) ==
-+ if (ChannelLayoutToChromeChannelLayout(
-+ codec_context_->ch_layout.u.mask,
-+ codec_context_->ch_layout.nb_channels) ==
- CHANNEL_LAYOUT_UNSUPPORTED) {
- return false;
- }
-
- // Store initial values to guard against midstream configuration changes.
-- channels_ = codec_context_->channels;
-+ channels_ = codec_context_->ch_layout.nb_channels;
- audio_codec_ = CodecIDToAudioCodec(codec_context_->codec_id);
- sample_rate_ = codec_context_->sample_rate;
- av_sample_format_ = codec_context_->sample_fmt;
-@@ -223,7 +224,7 @@ bool AudioFileReader::OnNewFrame(
- if (frames_read < 0)
- return false;
-
-- const int channels = frame->channels;
-+ const int channels = frame->ch_layout.nb_channels;
- if (frame->sample_rate != sample_rate_ || channels != channels_ ||
- frame->format != av_sample_format_) {
- DLOG(ERROR) << "Unsupported midstream configuration change!"
-diff --git a/media/filters/audio_file_reader_unittest.cc b/media/filters/audio_file_reader_unittest.cc
-index 2aba7927a31..1f45a50cace 100644
---- a/media/filters/audio_file_reader_unittest.cc
-+++ b/media/filters/audio_file_reader_unittest.cc
-@@ -121,11 +121,11 @@ class AudioFileReaderTest : public testing::Test {
- EXPECT_FALSE(reader_->Open());
- }
-
-- void RunTestFailingDecode(const char* fn) {
-+ void RunTestFailingDecode(const char* fn, int expect_read = 0) {
- Initialize(fn);
- EXPECT_TRUE(reader_->Open());
- std::vector<std::unique_ptr<AudioBus>> decoded_audio_packets;
-- EXPECT_EQ(reader_->Read(&decoded_audio_packets), 0);
-+ EXPECT_EQ(reader_->Read(&decoded_audio_packets), expect_read);
- }
-
- void RunTestPartialDecode(const char* fn) {
-@@ -219,7 +219,7 @@ TEST_F(AudioFileReaderTest, AAC_ADTS) {
- }
-
- TEST_F(AudioFileReaderTest, MidStreamConfigChangesFail) {
-- RunTestFailingDecode("midstream_config_change.mp3");
-+ RunTestFailingDecode("midstream_config_change.mp3", 42624);
- }
- #endif
-
-diff --git a/media/filters/audio_video_metadata_extractor.cc b/media/filters/audio_video_metadata_extractor.cc
-index 185819eb936..69ff508c221 100644
---- a/media/filters/audio_video_metadata_extractor.cc
-+++ b/media/filters/audio_video_metadata_extractor.cc
-@@ -113,6 +113,15 @@ bool AudioVideoMetadataExtractor::Extract(DataSource* source,
- if (!stream)
- continue;
-
-+ void* display_matrix =
-+ av_stream_get_side_data(stream, AV_PKT_DATA_DISPLAYMATRIX, nullptr);
-+ if (display_matrix) {
-+ rotation_ = VideoTransformation::FromFFmpegDisplayMatrix(
-+ static_cast<int32_t*>(display_matrix))
-+ .rotation;
-+ info.tags["rotate"] = base::NumberToString(rotation_);
-+ }
-+
- // Extract dictionary from streams also. Needed for containers that attach
- // metadata to contained streams instead the container itself, like OGG.
- ExtractDictionary(stream->metadata, &info.tags);
-@@ -255,8 +264,6 @@ void AudioVideoMetadataExtractor::ExtractDictionary(AVDictionary* metadata,
- if (raw_tags->find(tag->key) == raw_tags->end())
- (*raw_tags)[tag->key] = tag->value;
-
-- if (ExtractInt(tag, "rotate", &rotation_))
-- continue;
- if (ExtractString(tag, "album", &album_))
- continue;
- if (ExtractString(tag, "artist", &artist_))
-diff --git a/media/filters/ffmpeg_aac_bitstream_converter.cc b/media/filters/ffmpeg_aac_bitstream_converter.cc
-index 6f231c85729..ca5e5fb927d 100644
---- a/media/filters/ffmpeg_aac_bitstream_converter.cc
-+++ b/media/filters/ffmpeg_aac_bitstream_converter.cc
-@@ -195,14 +195,15 @@ bool FFmpegAACBitstreamConverter::ConvertPacket(AVPacket* packet) {
- if (!header_generated_ || codec_ != stream_codec_parameters_->codec_id ||
- audio_profile_ != stream_codec_parameters_->profile ||
- sample_rate_index_ != sample_rate_index ||
-- channel_configuration_ != stream_codec_parameters_->channels ||
-+ channel_configuration_ !=
-+ stream_codec_parameters_->ch_layout.nb_channels ||
- frame_length_ != header_plus_packet_size) {
- header_generated_ =
- GenerateAdtsHeader(stream_codec_parameters_->codec_id,
- 0, // layer
- stream_codec_parameters_->profile, sample_rate_index,
- 0, // private stream
-- stream_codec_parameters_->channels,
-+ stream_codec_parameters_->ch_layout.nb_channels,
- 0, // originality
- 0, // home
- 0, // copyrighted_stream
-@@ -214,7 +215,7 @@ bool FFmpegAACBitstreamConverter::ConvertPacket(AVPacket* packet) {
- codec_ = stream_codec_parameters_->codec_id;
- audio_profile_ = stream_codec_parameters_->profile;
- sample_rate_index_ = sample_rate_index;
-- channel_configuration_ = stream_codec_parameters_->channels;
-+ channel_configuration_ = stream_codec_parameters_->ch_layout.nb_channels;
- frame_length_ = header_plus_packet_size;
- }
-
-diff --git a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-index 1fd4c5ccd7d..f59bcd8fdaf 100644
---- a/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-+++ b/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
-@@ -34,7 +34,7 @@ class FFmpegAACBitstreamConverterTest : public testing::Test {
- memset(&test_parameters_, 0, sizeof(AVCodecParameters));
- test_parameters_.codec_id = AV_CODEC_ID_AAC;
- test_parameters_.profile = FF_PROFILE_AAC_MAIN;
-- test_parameters_.channels = 2;
-+ test_parameters_.ch_layout.nb_channels = 2;
- test_parameters_.extradata = extradata_header_;
- test_parameters_.extradata_size = sizeof(extradata_header_);
- }
-diff --git a/media/filters/ffmpeg_audio_decoder.cc b/media/filters/ffmpeg_audio_decoder.cc
-index 6a56c675f7d..4615fdeb3fb 100644
---- a/media/filters/ffmpeg_audio_decoder.cc
-+++ b/media/filters/ffmpeg_audio_decoder.cc
-@@ -28,7 +28,7 @@ namespace media {
-
- // Return the number of channels from the data in |frame|.
- static inline int DetermineChannels(AVFrame* frame) {
-- return frame->channels;
-+ return frame->ch_layout.nb_channels;
- }
-
- // Called by FFmpeg's allocation routine to allocate a buffer. Uses
-@@ -231,7 +231,7 @@ bool FFmpegAudioDecoder::OnNewFrame(const DecoderBuffer& buffer,
- // Translate unsupported into discrete layouts for discrete configurations;
- // ffmpeg does not have a labeled discrete configuration internally.
- ChannelLayout channel_layout = ChannelLayoutToChromeChannelLayout(
-- codec_context_->channel_layout, codec_context_->channels);
-+ codec_context_->ch_layout.u.mask, codec_context_->ch_layout.nb_channels);
- if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED &&
- config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE) {
- channel_layout = CHANNEL_LAYOUT_DISCRETE;
-@@ -348,11 +348,11 @@ bool FFmpegAudioDecoder::ConfigureDecoder(const AudioDecoderConfig& config) {
- // Success!
- av_sample_format_ = codec_context_->sample_fmt;
-
-- if (codec_context_->channels != config.channels()) {
-+ if (codec_context_->ch_layout.nb_channels != config.channels()) {
- MEDIA_LOG(ERROR, media_log_)
- << "Audio configuration specified " << config.channels()
- << " channels, but FFmpeg thinks the file contains "
-- << codec_context_->channels << " channels";
-+ << codec_context_->ch_layout.nb_channels << " channels";
- ReleaseFFmpegResources();
- state_ = DecoderState::kUninitialized;
- return false;
-@@ -403,7 +403,7 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
- if (frame->nb_samples <= 0)
- return AVERROR(EINVAL);
-
-- if (s->channels != channels) {
-+ if (s->ch_layout.nb_channels != channels) {
- DLOG(ERROR) << "AVCodecContext and AVFrame disagree on channel count.";
- return AVERROR(EINVAL);
- }
-@@ -436,7 +436,8 @@ int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
- ChannelLayout channel_layout =
- config_.channel_layout() == CHANNEL_LAYOUT_DISCRETE
- ? CHANNEL_LAYOUT_DISCRETE
-- : ChannelLayoutToChromeChannelLayout(s->channel_layout, s->channels);
-+ : ChannelLayoutToChromeChannelLayout(s->ch_layout.u.mask,
-+ s->ch_layout.nb_channels);
-
- if (channel_layout == CHANNEL_LAYOUT_UNSUPPORTED) {
- DLOG(ERROR) << "Unsupported channel layout.";
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
deleted file mode 100644
index 8bbbbe9483632..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m102.patch.args
+++ /dev/null
@@ -1 +0,0 @@
--RNp1
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
deleted file mode 100644
index b2a113791734c..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From ded379824f5de39357b6b1894578101aba5cdf05 Mon Sep 17 00:00:00 2001
-From: Eugene Zemtsov <eugene@chromium.org>
-Date: Fri, 29 Jul 2022 04:41:04 +0000
-Subject: [PATCH] Roll src/third_party/ffmpeg/ 880df5ede..b71ecd02b (279
- commits)
-
-https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/880df5ede50a..b71ecd02b479
-
-$ git log 880df5ede..b71ecd02b --date=short --no-merges --format='%ad %ae %s'
-2022-07-27 eugene Roll for M106
-2022-07-25 andreas.rheinhardt avcodec/x86/pngdsp: Remove obsolete ff_add_bytes_l2_mmx()
-2022-07-22 andreas.rheinhardt avcodec/hevcdec: Output MD5-message in one piece
-2022-07-24 epirat07 configure: properly require libx264 if enabled
-2022-07-24 zane avformat/argo_cvg: expose loop/reverb/checksum via metadata
-(...)
-2022-05-03 leo.izen avcodec/libjxldec: properly tag output colorspace
-2022-06-25 ffmpeg avfilter/Makefile: always make colorspace.o
-2022-03-02 brad avutil/ppc/cpu: Use proper header for OpenBSD PPC CPU detection
-2022-06-24 jamrial avformat/http: include version.h
-2022-05-16 mbonda-at-nvidia.com AV1 VDPAU hwaccel Decode support
-
-Created with:
- roll-dep src/third_party/ffmpeg
-
-ffmpeg usage fix:
- Switch from AVFrame::pkt_duration to AVFrame::duration,
- AVFrame::pkt_duration is deprecated
-
-Bug: 1344646
-Change-Id: Iaa3abf48ef81dae6d282bca8f0fa2a8dffeeba25
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3788638
-Reviewed-by: Will Cassella <cassew@chromium.org>
-Commit-Queue: Eugene Zemtsov <eugene@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#1029623}
----
- media/filters/audio_file_reader.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/media/filters/audio_file_reader.cc b/media/filters/audio_file_reader.cc
-index e1be5aa9a5b..951c003956f 100644
---- a/media/filters/audio_file_reader.cc
-+++ b/media/filters/audio_file_reader.cc
-@@ -243,10 +243,10 @@ bool AudioFileReader::OnNewFrame(
- // silence from being output. In the case where we are also discarding some
- // portion of the packet (as indicated by a negative pts), we further want to
- // adjust the duration downward by however much exists before zero.
-- if (audio_codec_ == AudioCodec::kAAC && frame->pkt_duration) {
-+ if (audio_codec_ == AudioCodec::kAAC && frame->duration) {
- const base::TimeDelta pkt_duration = ConvertFromTimeBase(
- glue_->format_context()->streams[stream_index_]->time_base,
-- frame->pkt_duration + std::min(static_cast<int64_t>(0), frame->pts));
-+ frame->duration + std::min(static_cast<int64_t>(0), frame->pts));
- const base::TimeDelta frame_duration =
- base::Seconds(frames_read / static_cast<double>(sample_rate_));
-
diff --git a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args b/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
deleted file mode 100644
index 8bbbbe9483632..0000000000000
--- a/srcpkgs/chromium/patches/REVERT-roll-src-third_party-ffmpeg-m106.patch.args
+++ /dev/null
@@ -1 +0,0 @@
--RNp1
diff --git a/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch b/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
deleted file mode 100644
index 04d04b166ba37..0000000000000
--- a/srcpkgs/chromium/patches/chromium-119-ffmpeg-4.4.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/media/filters/ffmpeg_demuxer.cc.orig
-+++ b/media/filters/ffmpeg_demuxer.cc
-@@ -390,7 +390,7 @@
-
- scoped_refptr<DecoderBuffer> buffer;
-
-- size_t side_data_size = 0;
-+ int side_data_size = 0;
- uint8_t* side_data = av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
-
-@@ -453,7 +453,7 @@
- packet->size - data_offset);
- }
-
-- size_t skip_samples_size = 0;
-+ int skip_samples_size = 0;
- const uint32_t* skip_samples_ptr =
- reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
diff --git a/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch b/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
deleted file mode 100644
index bb461ef3664a2..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-arm64-memory_tagging.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- chromium-120.0.6099.35/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.than 2023-11-26 13:50:07.005519877 +0100
-+++ chromium-120.0.6099.35/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h 2023-11-26 13:50:49.727267240 +0100
-@@ -152,10 +152,7 @@
- (!BUILDFLAG(PUT_REF_COUNT_IN_PREVIOUS_SLOT) && \
- defined(ARCH_CPU_LITTLE_ENDIAN))
-
--#define PA_CONFIG_HAS_MEMORY_TAGGING() \
-- (defined(ARCH_CPU_ARM64) && defined(__clang__) && \
-- !defined(ADDRESS_SANITIZER) && \
-- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)))
-+#define PA_CONFIG_HAS_MEMORY_TAGGING() 0
-
- #if PA_CONFIG(HAS_MEMORY_TAGGING)
- static_assert(sizeof(void*) == 8);
diff --git a/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch b/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
deleted file mode 100644
index 112da65b4d9b6..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-el7-clang-version-warning.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -up chromium-120.0.6099.56/third_party/libc++/src/include/__config.me chromium-120.0.6099.56/third_party/libc++/src/include/__config
---- chromium-120.0.6099.56/third_party/libc++/src/include/__config.me 2023-12-03 00:05:51.254483474 +0100
-+++ chromium-120.0.6099.56/third_party/libc++/src/include/__config 2023-12-03 00:06:05.872863168 +0100
-@@ -32,11 +32,7 @@
-
- // Warn if a compiler version is used that is not supported anymore
- // LLVM RELEASE Update the minimum compiler versions
--# if defined(_LIBCPP_CLANG_VER)
--# if _LIBCPP_CLANG_VER < 1500
--# warning "Libc++ only supports Clang 15 and later"
--# endif
--# elif defined(_LIBCPP_APPLE_CLANG_VER)
-+# if defined(_LIBCPP_APPLE_CLANG_VER)
- # if _LIBCPP_APPLE_CLANG_VER < 1500
- # warning "Libc++ only supports AppleClang 15 and later"
- # endif
diff --git a/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch b/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
deleted file mode 100644
index 72c7b7ec41c28..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-gn-workaround-atspi.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn.me chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn
---- chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn.me 2023-11-26 16:14:15.364064126 +0100
-+++ chromium-120.0.6099.35/build/config/linux/atspi2/BUILD.gn 2023-11-26 16:41:16.877321990 +0100
-@@ -21,6 +21,9 @@ if (use_atk) {
- minor = atspi_version[1]
- micro = atspi_version[2]
-
-+ # gn workaround for the error: Assignment had no effect
-+ print("ATSPI Version: $major.$minor.$micro")
-+
- # ATSPI 2.49.90 now defines these for us and it's an error for us to
- # redefine them on the compiler command line.
- # See ATSPI 927344a34cd5bf81fc64da4968241735ecb4f03b
diff --git a/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch b/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
deleted file mode 100644
index 44f867475b218..0000000000000
--- a/srcpkgs/chromium/patches/chromium-120-missing-header-files.patch
+++ /dev/null
@@ -1,459 +0,0 @@
-diff -up chromium-110.0.5481.177/base/memory/ref_counted.h.me chromium-110.0.5481.177/base/memory/ref_counted.h
---- chromium-110.0.5481.177/base/memory/ref_counted.h.me 2023-02-23 13:34:33.174817255 -0500
-+++ chromium-110.0.5481.177/base/memory/ref_counted.h 2023-02-23 13:42:28.646052469 -0500
-@@ -6,6 +6,7 @@
- #define BASE_MEMORY_REF_COUNTED_H_
-
- #include <stddef.h>
-+#include <limits>
-
- #include <utility>
-
-diff -up chromium-109.0.5414.74/base/check_op.h.me chromium-109.0.5414.74/base/check_op.h
---- chromium-109.0.5414.74/base/check_op.h.me 2023-01-17 17:39:27.620875883 +0100
-+++ chromium-109.0.5414.74/base/check_op.h 2023-01-17 17:39:42.546060957 +0100
-@@ -5,6 +5,7 @@
- #ifndef BASE_CHECK_OP_H_
- #define BASE_CHECK_OP_H_
-
-+#include <cstdint>
- #include <cstddef>
- #include <string>
- #include <type_traits>
-diff -up chromium-109.0.5414.74/base/debug/profiler.h.me chromium-109.0.5414.74/base/debug/profiler.h
---- chromium-109.0.5414.74/base/debug/profiler.h.me 2023-01-17 16:29:26.368090073 +0100
-+++ chromium-109.0.5414.74/base/debug/profiler.h 2023-01-17 16:59:41.190628679 +0100
-@@ -7,6 +7,7 @@
-
- #include <stddef.h>
-
-+#include <cstdint>
- #include <string>
-
- #include "base/base_export.h"
-diff -up chromium-109.0.5414.74/gpu/config/gpu_feature_info.h.me chromium-109.0.5414.74/gpu/config/gpu_feature_info.h
---- chromium-109.0.5414.74/gpu/config/gpu_feature_info.h.me 2023-01-17 19:06:53.530675129 +0100
-+++ chromium-109.0.5414.74/gpu/config/gpu_feature_info.h 2023-01-17 19:07:08.874849879 +0100
-@@ -5,6 +5,7 @@
- #ifndef GPU_CONFIG_GPU_FEATURE_INFO_H_
- #define GPU_CONFIG_GPU_FEATURE_INFO_H_
-
-+#include <cstdint>
- #include <string>
- #include <vector>
-
-diff -up chromium-109.0.5414.74/net/base/net_export.h.me chromium-109.0.5414.74/net/base/net_export.h
---- chromium-109.0.5414.74/net/base/net_export.h.me 2023-01-17 18:16:34.133854615 +0100
-+++ chromium-109.0.5414.74/net/base/net_export.h 2023-01-17 18:16:15.945623153 +0100
-@@ -5,6 +5,8 @@
- #ifndef NET_BASE_NET_EXPORT_H_
- #define NET_BASE_NET_EXPORT_H_
-
-+#include <cstdint>
-+
- // Defines NET_EXPORT so that functionality implemented by the net module can
- // be exported to consumers, and NET_EXPORT_PRIVATE that allows unit tests to
- // access features not intended to be used directly by real consumers.
-diff -up chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h.me chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h
---- chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h.me 2023-01-17 17:12:34.184686515 +0100
-+++ chromium-109.0.5414.74/sandbox/linux/syscall_broker/broker_file_permission.h 2023-01-17 17:13:16.537162420 +0100
-@@ -5,6 +5,7 @@
- #ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
- #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
-
-+#include <cstdint>
- #include <bitset>
- #include <string>
-
-diff -up chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h.me chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h
---- chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h.me 2023-01-17 17:33:20.895717307 +0100
-+++ chromium-109.0.5414.74/third_party/abseil-cpp/absl/strings/string_view.h 2023-01-17 17:34:03.456185365 +0100
-@@ -27,6 +27,7 @@
- #ifndef ABSL_STRINGS_STRING_VIEW_H_
- #define ABSL_STRINGS_STRING_VIEW_H_
-
-+#include <cstdint>
- #include <algorithm>
- #include <cassert>
- #include <cstddef>
-diff -up chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h.me chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h
---- chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h.me 2023-01-17 17:36:15.017616250 +0100
-+++ chromium-109.0.5414.74/third_party/angle/include/GLSLANG/ShaderVars.h 2023-01-17 17:36:48.960982195 +0100
-@@ -10,6 +10,7 @@
- #ifndef GLSLANG_SHADERVARS_H_
- #define GLSLANG_SHADERVARS_H_
-
-+#include <cstdint>
- #include <algorithm>
- #include <array>
- #include <string>
-diff -up chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.me chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h
---- chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.me 2023-01-17 19:17:40.480876171 +0100
-+++ chromium-109.0.5414.74/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h 2023-01-17 19:17:46.803958320 +0100
-@@ -5,6 +5,7 @@
- #ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
- #define THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
-
-+#include <cstdint>
- #include <array>
- #include <string>
-
-diff -up chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.me chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h
---- chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.me 2023-01-17 18:02:44.681538107 +0100
-+++ chromium-117.0.5938.48/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h 2023-01-17 18:02:57.208679140 +0100
-@@ -15,6 +15,7 @@
- #ifndef SRC_TINT_READER_SPIRV_NAMER_H_
- #define SRC_TINT_READER_SPIRV_NAMER_H_
-
-+#include <cstdint>
- #include <string>
- #include <unordered_map>
- #include <vector>
-diff -up chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.me chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h
---- chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.me 2023-01-18 15:22:38.472940648 +0100
-+++ chromium-109.0.5414.74/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h 2023-01-18 15:23:09.380255101 +0100
-@@ -5,6 +5,7 @@
- #ifndef DISCOVERY_DNSSD_PUBLIC_DNS_SD_TXT_RECORD_H_
- #define DISCOVERY_DNSSD_PUBLIC_DNS_SD_TXT_RECORD_H_
-
-+#include <cstdint>
- #include <functional>
- #include <map>
- #include <set>
-diff -up chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp.me chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp
---- chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp.me 2023-01-17 15:37:48.530626516 +0100
-+++ chromium-109.0.5414.74/third_party/swiftshader/src/System/LRUCache.hpp 2023-01-17 16:57:46.025548092 +0100
-@@ -17,6 +17,7 @@
-
- #include "System/Debug.hpp"
-
-+#include <cstdint>
- #include <cstddef>
- #include <functional>
- #include <unordered_set>
-diff -up chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h.me chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h
---- chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h.me 2023-01-17 18:08:25.745491353 +0100
-+++ chromium-109.0.5414.74/ui/gfx/geometry/linear_gradient.h 2023-01-17 18:08:35.777667632 +0100
-@@ -5,6 +5,7 @@
- #ifndef UI_GFX_LINEAR_GRADIENT_H_
- #define UI_GFX_LINEAR_GRADIENT_H_
-
-+#include <cstdint>
- #include <array>
- #include <string>
-
-diff -up chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h.me chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h
---- chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h.me 2023-01-19 10:10:21.287876736 +0100
-+++ chromium-109.0.5414.74/third_party/ruy/src/ruy/profiler/instrumentation.h 2023-01-19 10:11:21.714778896 +0100
-@@ -17,6 +17,7 @@ limitations under the License.
- #define RUY_RUY_PROFILER_INSTRUMENTATION_H_
-
- #ifdef RUY_PROFILER
-+#include <string>
- #include <cstdio>
- #include <mutex>
- #include <vector>
-diff -up chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.me chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h
---- chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.me 2023-01-19 10:30:27.533861985 +0100
-+++ chromium-109.0.5414.74/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h 2023-01-19 10:31:12.585554183 +0100
-@@ -31,6 +31,7 @@ limitations under the License.
- #ifndef TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
- #define TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
-
-+#include <cstdint>
- #include <complex>
- #include <deque>
- #include <vector>
-diff -up chromium-109.0.5414.74/base/containers/flat_map.h.mee chromium-109.0.5414.74/base/containers/flat_map.h
---- chromium-109.0.5414.74/base/containers/flat_map.h.mee 2023-01-19 10:59:52.214957773 +0100
-+++ chromium-109.0.5414.74/base/containers/flat_map.h 2023-01-19 11:00:06.415215309 +0100
-@@ -5,6 +5,7 @@
- #ifndef BASE_CONTAINERS_FLAT_MAP_H_
- #define BASE_CONTAINERS_FLAT_MAP_H_
-
-+#include <cstdint>
- #include <functional>
- #include <tuple>
- #include <utility>
-diff -up chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h.mee chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h
---- chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h.mee 2023-01-19 10:36:40.571422826 +0100
-+++ chromium-109.0.5414.74/components/crash/core/app/crash_reporter_client.h 2023-01-19 10:36:49.343565294 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_CRASH_CORE_APP_CRASH_REPORTER_CLIENT_H_
- #define COMPONENTS_CRASH_CORE_APP_CRASH_REPORTER_CLIENT_H_
-
-+#include <cstdint>
- #include <string>
-
- #include "build/build_config.h"
-diff -up chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h.mee chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h
---- chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h.mee 2023-01-19 11:45:15.953159755 +0100
-+++ chromium-109.0.5414.74/ui/base/prediction/kalman_filter.h 2023-01-19 11:45:22.320246241 +0100
-@@ -5,6 +5,8 @@
- #ifndef UI_BASE_PREDICTION_KALMAN_FILTER_H_
- #define UI_BASE_PREDICTION_KALMAN_FILTER_H_
-
-+#include <cstdint>
-+
- #include "base/component_export.h"
- #include "ui/gfx/geometry/matrix3_f.h"
-
-diff -up chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h.me chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h
---- chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h.me 2023-01-19 15:20:07.620987949 +0100
-+++ chromium-109.0.5414.74/components/password_manager/core/browser/generation/password_generator.h 2023-01-19 15:20:18.324173702 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
- #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
-
-+#include <cstdint>
- #include <string>
-
-
-diff -up chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h.me chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h
---- chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h.me 2023-01-19 16:00:14.350186515 +0100
-+++ chromium-109.0.5414.74/components/feature_engagement/internal/event_storage_validator.h 2023-01-19 16:00:21.643307993 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
- #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
-
-+#include <cstdint>
- #include <string>
-
- namespace feature_engagement {
-diff -up chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h.me chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h
---- chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h.me 2023-01-19 15:59:18.210239416 +0100
-+++ chromium-109.0.5414.74/components/feature_engagement/internal/never_event_storage_validator.h 2023-01-19 15:59:34.513515030 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
- #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
-
-+#include <cstdint>
- #include <string>
-
- #include "components/feature_engagement/internal/event_storage_validator.h"
-diff -up chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.me chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc
---- chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.me 2023-01-19 16:09:29.216477182 +0100
-+++ chromium-109.0.5414.74/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc 2023-01-19 16:10:05.657089208 +0100
-@@ -45,6 +45,7 @@
- #include "llvm/Support/SaveAndRestore.h"
- #include "llvm/Support/raw_ostream.h"
- #include <algorithm>
-+#include <cstdint>
- #include <string>
- #include <sysexits.h>
- #ifdef HAVE_BACKTRACE
-diff -up chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h.me chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h
---- chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h.me 2023-01-19 16:32:05.338160131 +0100
-+++ chromium-109.0.5414.74/chrome/browser/privacy_budget/encountered_surface_tracker.h 2023-01-19 16:32:16.213326798 +0100
-@@ -5,6 +5,7 @@
- #ifndef CHROME_BROWSER_PRIVACY_BUDGET_ENCOUNTERED_SURFACE_TRACKER_H_
- #define CHROME_BROWSER_PRIVACY_BUDGET_ENCOUNTERED_SURFACE_TRACKER_H_
-
-+#include <cstdint>
- #include <map>
-
- #include "base/containers/flat_set.h"
-diff -up chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h.me chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h
---- chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h.me 2023-01-19 16:47:55.548571102 +0100
-+++ chromium-109.0.5414.74/components/autofill/core/browser/autofill_ablation_study.h 2023-01-19 16:48:29.214146529 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
- #define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
-
-+#include <cstdint>
- #include <string>
-
- class GURL;
-diff -up chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h.me chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h
---- chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h.me 2023-01-19 16:57:29.525372814 +0100
-+++ chromium-109.0.5414.74/components/omnibox/browser/on_device_head_model.h 2023-01-19 16:58:02.667979288 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
- #define COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
-
-+#include <cstdint>
- #include <string>
- #include <utility>
- #include <vector>
-diff -up chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h.me chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h
---- chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h.me 2023-01-19 17:02:45.258544665 +0100
-+++ chromium-109.0.5414.74/components/payments/content/utility/fingerprint_parser.h 2023-01-19 17:02:52.577611757 +0100
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
- #define COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
-
-+#include <cstdint>
- #include <stddef.h>
-
- #include <string>
-diff -up chromium-109.0.5414.74/pdf/document_attachment_info.h.me chromium-109.0.5414.74/pdf/document_attachment_info.h
---- chromium-109.0.5414.74/pdf/document_attachment_info.h.me 2023-01-19 17:28:28.552063534 +0100
-+++ chromium-109.0.5414.74/pdf/document_attachment_info.h 2023-01-19 17:28:48.072379953 +0100
-@@ -5,6 +5,7 @@
- #ifndef PDF_DOCUMENT_ATTACHMENT_INFO_H_
- #define PDF_DOCUMENT_ATTACHMENT_INFO_H_
-
-+#include <cstdint>
- #include <string>
-
-
-diff -up chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h.me chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h
---- chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h.me 2023-01-19 18:25:47.648193710 +0100
-+++ chromium-109.0.5414.74/third_party/pdfium/constants/annotation_flags.h 2023-01-19 18:26:11.488593556 +0100
-@@ -5,6 +5,8 @@
- #ifndef CONSTANTS_ANNOTATION_FLAGS_H_
- #define CONSTANTS_ANNOTATION_FLAGS_H_
-
-+#include <cstdint>
-+
- namespace pdfium {
- namespace annotation_flags {
-
-diff -up chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.me chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
---- chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.me 2023-04-15 16:44:55.344305412 +0200
-+++ chromium-113.0.5672.24/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h 2023-04-15 16:47:09.028666995 +0200
-@@ -2854,6 +2854,7 @@ static void vma_aligned_free(void* VMA_N
-
- // Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.
- #if VMA_STATS_STRING_ENABLED
-+#include <stdio.h>
- static inline void VmaUint32ToStr(char* VMA_NOT_NULL outStr, size_t strLen, uint32_t num)
- {
- snprintf(outStr, strLen, "%u", static_cast<unsigned int>(num));
-diff -up chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h.me chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h
---- chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h.me 2023-04-18 15:55:44.774916319 +0200
-+++ chromium-113.0.5672.37/chrome/browser/webauthn/authenticator_request_dialog_model.h 2023-04-18 15:55:54.441085882 +0200
-@@ -8,6 +8,7 @@
- #include <memory>
- #include <string>
- #include <vector>
-+#include <variant>
-
- #include "base/containers/span.h"
- #include "base/functional/callback_forward.h"
-diff -up chromium-113.0.5672.37/gin/time_clamper.h.me chromium-113.0.5672.37/gin/time_clamper.h
---- chromium-113.0.5672.37/gin/time_clamper.h.me 2023-04-18 16:38:41.180437467 +0200
-+++ chromium-113.0.5672.37/gin/time_clamper.h 2023-04-18 16:39:43.857049432 +0200
-@@ -48,7 +48,7 @@ class GIN_EXPORT TimeClamper {
- const int64_t micros = now_micros % 1000;
- // abs() is necessary for devices with times before unix-epoch (most likely
- // configured incorrectly).
-- if (abs(micros) + kResolutionMicros < 1000) {
-+ if (std::abs(micros) + kResolutionMicros < 1000) {
- return now_micros / 1000;
- }
- return ClampTimeResolution(now_micros) / 1000;
-diff -up chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc.me chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc
---- chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc.me 2023-04-21 08:07:55.362714544 +0200
-+++ chromium-113.0.5672.53/chrome/test/chromedriver/chrome/web_view_impl.cc 2023-04-21 08:14:35.424158693 +0200
-@@ -10,6 +10,7 @@
- #include <queue>
- #include <utility>
- #include <vector>
-+#include <cstring>
-
- #include "base/check.h"
- #include "base/files/file_path.h"
-diff -up chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc.me chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc
---- chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc.me 2023-06-18 12:33:52.387412788 +0200
-+++ chromium-115.0.5790.32/skia/ext/skcolorspace_trfn.cc 2023-06-18 12:35:28.229148935 +0200
-@@ -3,6 +3,7 @@
- // found in the LICENSE file.
-
- #include "skia/ext/skcolorspace_trfn.h"
-+#include <cmath>
-
- namespace skia {
-
-diff -up chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h
---- chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint 2021-11-19 17:05:31.379750350 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/common_video/h264/sps_parser.h 2021-11-19 17:07:35.191520127 -0500
-@@ -11,6 +11,7 @@
- #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
- #define COMMON_VIDEO_H264_SPS_PARSER_H_
-
-+#include <cstdint>
- #include "absl/types/optional.h"
- #include "rtc_base/bitstream_reader.h"
-
-diff -up chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h
---- chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint 2021-11-12 05:28:10.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/modules/include/module_common_types_public.h 2021-11-19 17:05:31.379750350 -0500
-@@ -11,6 +11,7 @@
- #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
- #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
-
-+#include <cstdint>
- #include <limits>
-
- #include "absl/types/optional.h"
-diff -up chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h.missing-cstdint chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h
---- chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h.missing-cstdint 2021-11-12 05:25:24.000000000 -0500
-+++ chromium-96.0.4664.45/ui/gfx/linux/drm_util_linux.h 2021-11-19 17:05:31.379750350 -0500
-@@ -9,6 +9,8 @@
-
- #include "ui/gfx/buffer_types.h"
-
-+#include <cstdint>
-+
- namespace ui {
-
- int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format);
-diff -up chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc
---- chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring 2021-11-12 05:28:09.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/audio/utility/channel_mixer.cc 2021-11-19 17:10:02.927438695 -0500
-@@ -8,6 +8,8 @@
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-+#include <cstring>
-+
- #include "audio/utility/channel_mixer.h"
-
- #include "audio/utility/channel_mixing_matrix.h"
-diff -up chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
---- chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring 2021-11-12 05:28:10.000000000 -0500
-+++ chromium-96.0.4664.45/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2021-11-19 17:10:02.928438701 -0500
-@@ -10,6 +10,7 @@
-
- #include "modules/video_coding/utility/ivf_file_reader.h"
-
-+#include <cstring>
- #include <string>
- #include <vector>
-
-diff -up chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h.me chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h
---- chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h.me 2023-09-10 17:53:04.826298351 +0200
-+++ chromium-117.0.5938.48/third_party/ipcz/src/ipcz/router_link.h 2023-09-10 17:53:22.201756894 +0200
-@@ -5,6 +5,7 @@
- #ifndef IPCZ_SRC_IPCZ_ROUTER_LINK_H_
- #define IPCZ_SRC_IPCZ_ROUTER_LINK_H_
-
-+#include <memory>
- #include <cstddef>
- #include <functional>
- #include <string>
-diff -up chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc.me chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc
---- chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc.me 2023-09-10 17:36:27.199841051 +0200
-+++ chromium-117.0.5938.48/third_party/material_color_utilities/src/cpp/palettes/tones.cc 2023-09-10 17:44:51.870554233 +0200
-@@ -14,6 +14,7 @@
- * limitations under the License.
- */
-
-+#include <cmath>
- #include "cpp/palettes/tones.h"
-
- #include "cpp/cam/cam.h"
-diff -up chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h.me chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h
---- chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h.me 2023-10-01 13:55:01.913193186 +0200
-+++ chromium-118.0.5993.32/services/device/public/cpp/generic_sensor/sensor_reading.h 2023-10-01 14:05:38.488038429 +0200
-@@ -5,6 +5,9 @@
- #ifndef SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
- #define SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
-
-+#include <cstddef>
-+#include <cstdint>
-+
- #include <type_traits>
-
- namespace device {
diff --git a/srcpkgs/chromium/patches/chromium-121-constexpr.patch b/srcpkgs/chromium/patches/chromium-121-constexpr.patch
new file mode 100644
index 0000000000000..a0b7166a5c8f8
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-constexpr.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h.me chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h
+--- chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h.me 2024-01-18 17:00:24.791582422 +0100
++++ chromium-121.0.6167.57/components/performance_manager/resource_attribution/query_params.h 2024-01-18 17:22:21.521682845 +0100
+@@ -27,7 +27,7 @@ struct QueryParams {
+ QueryParams(const QueryParams& other);
+ QueryParams& operator=(const QueryParams& other);
+
+- friend constexpr bool operator==(const QueryParams&,
++ friend bool operator==(const QueryParams&,
+ const QueryParams&) = default;
+
+ // Individual resource contexts to measure.
diff --git a/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch b/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
new file mode 100644
index 0000000000000..bc86eb2355874
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-el7-clang-version-warning.patch
@@ -0,0 +1,15 @@
+--- chromium-121.0.6167.57/third_party/libc++/src/include/__config.orig 2024-01-16 18:38:00.995930774 +0100
++++ chromium-121.0.6167.57/third_party/libc++/src/include/__config 2024-01-16 18:43:47.056517289 +0100
+@@ -32,11 +32,7 @@
+
+ // Warn if a compiler version is used that is not supported anymore
+ // LLVM RELEASE Update the minimum compiler versions
+-# if defined(_LIBCPP_CLANG_VER)
+-# if _LIBCPP_CLANG_VER < 1600
+-# warning "Libc++ only supports Clang 16 and later"
+-# endif
+-# elif defined(_LIBCPP_APPLE_CLANG_VER)
++# if defined(_LIBCPP_APPLE_CLANG_VER)
+ # if _LIBCPP_APPLE_CLANG_VER < 1500
+ # warning "Libc++ only supports AppleClang 15 and later"
+ # endif
diff --git a/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch b/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
new file mode 100644
index 0000000000000..0a2ac1de3561d
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-el7-default-constructor-involving-anonymous-union.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc.me chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc
+--- chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc.me 2024-01-23 15:13:11.469104694 +0100
++++ chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.cc 2024-01-23 15:11:40.117842015 +0100
+@@ -46,7 +46,7 @@ size_t GetResultSizeBytes(const HeaderDi
+
+ } // namespace
+
+-HeaderDirectFromSellerSignals::Result::Result() = default;
++HeaderDirectFromSellerSignals::Result::Result() {}
+
+ HeaderDirectFromSellerSignals::Result::Result(
+ absl::optional<std::string> seller_signals,
--git a/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch b/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
new file mode 100644
index 0000000000000..377de0d1140cb
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-missing-header-files.patch
@@ -0,0 +1,459 @@
+diff -up chromium-119.0.6045.105/base/check_op.h.missing-header-files chromium-119.0.6045.105/base/check_op.h
+--- chromium-119.0.6045.105/base/check_op.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/check_op.h 2023-11-06 14:34:01.808868982 +0100
+@@ -5,6 +5,7 @@
+ #ifndef BASE_CHECK_OP_H_
+ #define BASE_CHECK_OP_H_
+
++#include <cstdint>
+ #include <cstddef>
+ #include <string>
+ #include <string_view>
+diff -up chromium-119.0.6045.105/base/containers/flat_map.h.missing-header-files chromium-119.0.6045.105/base/containers/flat_map.h
+--- chromium-119.0.6045.105/base/containers/flat_map.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/containers/flat_map.h 2023-11-06 14:34:01.813869089 +0100
+@@ -5,6 +5,7 @@
+ #ifndef BASE_CONTAINERS_FLAT_MAP_H_
+ #define BASE_CONTAINERS_FLAT_MAP_H_
+
++#include <cstdint>
+ #include <functional>
+ #include <tuple>
+ #include <type_traits>
+diff -up chromium-119.0.6045.105/base/debug/profiler.h.missing-header-files chromium-119.0.6045.105/base/debug/profiler.h
+--- chromium-119.0.6045.105/base/debug/profiler.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/debug/profiler.h 2023-11-06 14:34:01.809869004 +0100
+@@ -8,6 +8,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/base_export.h"
+diff -up chromium-119.0.6045.105/base/memory/ref_counted.h.missing-header-files chromium-119.0.6045.105/base/memory/ref_counted.h
+--- chromium-119.0.6045.105/base/memory/ref_counted.h.missing-header-files 2023-11-01 19:10:05.000000000 +0100
++++ chromium-119.0.6045.105/base/memory/ref_counted.h 2023-11-06 14:34:01.808868982 +0100
+@@ -6,6 +6,7 @@
+ #define BASE_MEMORY_REF_COUNTED_H_
+
+ #include <stddef.h>
++#include <limits>
+
+ #include <limits>
+ #include <utility>
+diff -up chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h.missing-header-files chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h
+--- chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h.missing-header-files 2023-11-01 19:10:13.000000000 +0100
++++ chromium-119.0.6045.105/chrome/browser/privacy_budget/encountered_surface_tracker.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <map>
+
+ #include "base/containers/flat_set.h"
+diff -up chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h.missing-header-files chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h
+--- chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h.missing-header-files 2023-11-01 19:10:16.000000000 +0100
++++ chromium-119.0.6045.105/chrome/browser/webauthn/authenticator_request_dialog_model.h 2023-11-06 14:34:01.817869174 +0100
+@@ -8,6 +8,7 @@
+ #include <memory>
+ #include <string>
+ #include <vector>
++#include <variant>
+
+ #include "base/containers/span.h"
+ #include "base/functional/callback_forward.h"
+diff -up chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc.missing-header-files chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc
+--- chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc.missing-header-files 2023-11-01 19:10:16.000000000 +0100
++++ chromium-119.0.6045.105/chrome/test/chromedriver/chrome/web_view_impl.cc 2023-11-06 14:34:01.818869196 +0100
+@@ -11,6 +11,7 @@
+ #include <queue>
+ #include <utility>
+ #include <vector>
++#include <cstring>
+
+ #include "base/check.h"
+ #include "base/files/file_path.h"
+diff -up chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h.missing-header-files chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h
+--- chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h.missing-header-files 2023-11-01 19:10:19.000000000 +0100
++++ chromium-119.0.6045.105/components/autofill/core/browser/autofill_ablation_study.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ class GURL;
+diff -up chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h.missing-header-files chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h
+--- chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h.missing-header-files 2023-11-01 19:10:20.000000000 +0100
++++ chromium-119.0.6045.105/components/crash/core/app/crash_reporter_client.h 2023-11-06 14:34:01.813869089 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "build/build_config.h"
+diff -up chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h.missing-header-files chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h
+--- chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/feature_engagement/internal/event_storage_validator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+ namespace feature_engagement {
+diff -up chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h.missing-header-files chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h
+--- chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/feature_engagement/internal/never_event_storage_validator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
+ #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_EVENT_STORAGE_VALIDATOR_H_
+
++#include <cstdint>
+ #include <string>
+
+ #include "components/feature_engagement/internal/event_storage_validator.h"
+diff -up chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h.missing-header-files chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h
+--- chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/omnibox/browser/on_device_head_model.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+ #include <utility>
+ #include <vector>
+diff -up chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h.missing-header-files chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h
+--- chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/password_manager/core/browser/generation/password_generator.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+
+diff -up chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h.missing-header-files chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h
+--- chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h.missing-header-files 2023-11-01 19:10:21.000000000 +0100
++++ chromium-119.0.6045.105/components/payments/content/utility/fingerprint_parser.h 2023-11-06 14:34:01.815869132 +0100
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
+ #define COMPONENTS_PAYMENTS_CONTENT_UTILITY_FINGERPRINT_PARSER_H_
+
++#include <cstdint>
+ #include <stddef.h>
+ #include <stdint.h>
+
+diff -up chromium-119.0.6045.105/gin/time_clamper.h.missing-header-files chromium-119.0.6045.105/gin/time_clamper.h
+--- chromium-119.0.6045.105/gin/time_clamper.h.missing-header-files 2023-11-01 19:10:28.000000000 +0100
++++ chromium-119.0.6045.105/gin/time_clamper.h 2023-11-06 14:34:01.818869196 +0100
+@@ -48,7 +48,7 @@ class GIN_EXPORT TimeClamper {
+ const int64_t micros = now_micros % 1000;
+ // abs() is necessary for devices with times before unix-epoch (most likely
+ // configured incorrectly).
+- if (abs(micros) + kResolutionMicros < 1000) {
++ if (std::abs(micros) + kResolutionMicros < 1000) {
+ return now_micros / 1000;
+ }
+ return ClampTimeResolution(now_micros) / 1000;
+diff -up chromium-119.0.6045.105/gpu/config/gpu_feature_info.h.missing-header-files chromium-119.0.6045.105/gpu/config/gpu_feature_info.h
+--- chromium-119.0.6045.105/gpu/config/gpu_feature_info.h.missing-header-files 2023-11-01 19:10:28.000000000 +0100
++++ chromium-119.0.6045.105/gpu/config/gpu_feature_info.h 2023-11-06 14:34:01.809869004 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff -up chromium-119.0.6045.105/net/base/net_export.h.missing-header-files chromium-119.0.6045.105/net/base/net_export.h
+--- chromium-119.0.6045.105/net/base/net_export.h.missing-header-files 2023-11-01 19:10:32.000000000 +0100
++++ chromium-119.0.6045.105/net/base/net_export.h 2023-11-06 14:34:01.809869004 +0100
+@@ -5,6 +5,8 @@
+ #ifndef NET_BASE_NET_EXPORT_H_
+ #define NET_BASE_NET_EXPORT_H_
+
++#include <cstdint>
++
+ // Defines NET_EXPORT so that functionality implemented by the net module can
+ // be exported to consumers, and NET_EXPORT_PRIVATE that allows unit tests to
+ // access features not intended to be used directly by real consumers.
+diff -up chromium-119.0.6045.105/pdf/document_attachment_info.h.missing-header-files chromium-119.0.6045.105/pdf/document_attachment_info.h
+--- chromium-119.0.6045.105/pdf/document_attachment_info.h.missing-header-files 2023-11-01 19:10:34.000000000 +0100
++++ chromium-119.0.6045.105/pdf/document_attachment_info.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <string>
+
+
+diff -up chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h.missing-header-files chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h
+--- chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h.missing-header-files 2023-11-01 19:10:34.000000000 +0100
++++ chromium-119.0.6045.105/sandbox/linux/syscall_broker/broker_file_permission.h 2023-11-06 14:34:01.809869004 +0100
+@@ -5,6 +5,7 @@
+ #ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+ #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+
++#include <cstdint>
+ #include <bitset>
+ #include <cstdint>
+ #include <string>
+diff -up chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h.missing-header-files chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h
+--- chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h.missing-header-files 2023-11-01 19:10:35.000000000 +0100
++++ chromium-119.0.6045.105/services/device/public/cpp/generic_sensor/sensor_reading.h 2023-11-06 14:34:01.820869238 +0100
+@@ -8,6 +8,9 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <cstddef>
++#include <cstdint>
++
+ #include <type_traits>
+
+ namespace device {
+diff -up chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc.missing-header-files chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc
+--- chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc.missing-header-files 2023-11-01 19:10:35.000000000 +0100
++++ chromium-119.0.6045.105/skia/ext/skcolorspace_trfn.cc 2023-11-06 14:34:01.818869196 +0100
+@@ -3,6 +3,7 @@
+ // found in the LICENSE file.
+
+ #include "skia/ext/skcolorspace_trfn.h"
++#include <cmath>
+
+ #include <cmath>
+
+diff -up chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h.missing-header-files chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h
+--- chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h.missing-header-files 2023-11-01 19:10:36.000000000 +0100
++++ chromium-119.0.6045.105/third_party/abseil-cpp/absl/strings/string_view.h 2023-11-06 14:34:01.809869004 +0100
+@@ -27,6 +27,7 @@
+ #ifndef ABSL_STRINGS_STRING_VIEW_H_
+ #define ABSL_STRINGS_STRING_VIEW_H_
+
++#include <cstdint>
+ #include <algorithm>
+ #include <cassert>
+ #include <cstddef>
+diff -up chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h.missing-header-files chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h
+--- chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h.missing-header-files 2023-11-01 19:11:59.000000000 +0100
++++ chromium-119.0.6045.105/third_party/angle/include/GLSLANG/ShaderVars.h 2023-11-06 14:34:01.810869025 +0100
+@@ -10,6 +10,7 @@
+ #ifndef GLSLANG_SHADERVARS_H_
+ #define GLSLANG_SHADERVARS_H_
+
++#include <cstdint>
+ #include <algorithm>
+ #include <array>
+ #include <cstdint>
+diff -up chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.missing-header-files chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h
+--- chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h.missing-header-files 2023-11-01 19:10:37.000000000 +0100
++++ chromium-119.0.6045.105/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h 2023-11-06 14:34:01.810869025 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <array>
+ #include <cstdint>
+ #include <functional>
+diff -up chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.missing-header-files chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h
+--- chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h.missing-header-files 2023-11-01 19:13:50.000000000 +0100
++++ chromium-119.0.6045.105/third_party/dawn/src/tint/lang/spirv/reader/ast_parser/namer.h 2023-11-06 14:34:01.810869025 +0100
+@@ -15,6 +15,7 @@
+ #ifndef SRC_TINT_LANG_SPIRV_READER_AST_PARSER_NAMER_H_
+ #define SRC_TINT_LANG_SPIRV_READER_AST_PARSER_NAMER_H_
+
++#include <cstdint>
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h.missing-header-files chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h
+--- chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h.missing-header-files 2023-11-01 19:11:20.000000000 +0100
++++ chromium-119.0.6045.105/third_party/ipcz/src/ipcz/router_link.h 2023-11-06 14:34:01.819869217 +0100
+@@ -5,6 +5,7 @@
+ #ifndef IPCZ_SRC_IPCZ_ROUTER_LINK_H_
+ #define IPCZ_SRC_IPCZ_ROUTER_LINK_H_
+
++#include <memory>
+ #include <cstddef>
+ #include <functional>
+ #include <memory>
+diff -up chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc.missing-header-files chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc
+--- chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc.missing-header-files 2023-11-01 19:11:53.000000000 +0100
++++ chromium-119.0.6045.105/third_party/material_color_utilities/src/cpp/palettes/tones.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -14,6 +14,7 @@
+ * limitations under the License.
+ */
+
++#include <cmath>
+ #include "cpp/palettes/tones.h"
+
+ #include "cpp/cam/cam.h"
+diff -up chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.missing-header-files chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h
+--- chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h.missing-header-files 2023-11-01 19:11:59.000000000 +0100
++++ chromium-119.0.6045.105/third_party/openscreen/src/discovery/dnssd/public/dns_sd_txt_record.h 2023-11-06 14:34:01.810869025 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <functional>
+ #include <map>
+ #include <set>
+diff -up chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h.missing-header-files chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h
+--- chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h.missing-header-files 2023-11-01 19:14:48.000000000 +0100
++++ chromium-119.0.6045.105/third_party/pdfium/constants/annotation_flags.h 2023-11-06 14:34:01.815869132 +0100
+@@ -7,6 +7,8 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
++
+ namespace pdfium {
+ namespace annotation_flags {
+
+diff -up chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h.missing-header-files chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h
+--- chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h.missing-header-files 2023-11-01 19:12:02.000000000 +0100
++++ chromium-119.0.6045.105/third_party/ruy/src/ruy/profiler/instrumentation.h 2023-11-06 14:34:01.813869089 +0100
+@@ -17,6 +17,7 @@ limitations under the License.
+ #define RUY_RUY_PROFILER_INSTRUMENTATION_H_
+
+ #ifdef RUY_PROFILER
++#include <string>
+ #include <cstdio>
+ #include <mutex>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp.missing-header-files chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp
+--- chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp.missing-header-files 2023-11-01 19:12:15.000000000 +0100
++++ chromium-119.0.6045.105/third_party/swiftshader/src/System/LRUCache.hpp 2023-11-06 14:34:01.810869025 +0100
+@@ -17,6 +17,7 @@
+
+ #include "System/Debug.hpp"
+
++#include <cstdint>
+ #include <cstddef>
+ #include <cstdint>
+ #include <functional>
+diff -up chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.missing-header-files chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc
+--- chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc.missing-header-files 2023-11-01 19:12:42.000000000 +0100
++++ chromium-119.0.6045.105/third_party/swiftshader/third_party/llvm-10.0/llvm/lib/Support/Unix/Signals.inc 2023-11-06 14:34:01.814869110 +0100
+@@ -45,6 +45,7 @@
+ #include "llvm/Support/SaveAndRestore.h"
+ #include "llvm/Support/raw_ostream.h"
+ #include <algorithm>
++#include <cstdint>
+ #include <string>
+ #include <sysexits.h>
+ #ifdef HAVE_BACKTRACE
+diff -up chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.missing-header-files chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h
+--- chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h.missing-header-files 2023-11-01 19:13:20.000000000 +0100
++++ chromium-119.0.6045.105/third_party/tflite/src/tensorflow/lite/kernels/internal/spectrogram.h 2023-11-06 14:34:01.813869089 +0100
+@@ -31,6 +31,7 @@ limitations under the License.
+ #ifndef TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
+ #define TENSORFLOW_LITE_KERNELS_INTERNAL_SPECTROGRAM_H_
+
++#include <cstdint>
+ #include <complex>
+ #include <deque>
+ #include <vector>
+diff -up chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.missing-header-files chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
+--- chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.missing-header-files 2023-11-01 19:12:45.000000000 +0100
++++ chromium-119.0.6045.105/third_party/vulkan-deps/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h 2023-11-06 14:34:01.817869174 +0100
+@@ -2884,6 +2884,7 @@ static void vma_aligned_free(void* VMA_N
+
+ // Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.
+ #if VMA_STATS_STRING_ENABLED
++#include <stdio.h>
+ static inline void VmaUint32ToStr(char* VMA_NOT_NULL outStr, size_t strLen, uint32_t num)
+ {
+ snprintf(outStr, strLen, "%u", static_cast<unsigned int>(num));
+diff -up chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc.missing-header-files chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc
+--- chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc.missing-header-files 2023-11-01 19:14:05.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/audio/utility/channel_mixer.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -8,6 +8,8 @@
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
++#include <cstring>
++
+ #include "audio/utility/channel_mixer.h"
+
+ #include "audio/utility/channel_mixing_matrix.h"
+diff -up chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h.missing-header-files chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h
+--- chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h.missing-header-files 2023-11-01 19:14:06.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/common_video/h264/sps_parser.h 2023-11-06 14:34:01.819869217 +0100
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
+ #define COMMON_VIDEO_H264_SPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+ #include "rtc_base/bitstream_reader.h"
+
+diff -up chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h.missing-header-files chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h
+--- chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h.missing-header-files 2023-11-01 19:14:11.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/modules/include/module_common_types_public.h 2023-11-06 14:34:01.819869217 +0100
+@@ -11,6 +11,7 @@
+ #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+ #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+
++#include <cstdint>
+ #include <limits>
+
+ #include "absl/types/optional.h"
+diff -up chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-header-files chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
+--- chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-header-files 2023-11-01 19:14:12.000000000 +0100
++++ chromium-119.0.6045.105/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2023-11-06 14:34:01.819869217 +0100
+@@ -10,6 +10,7 @@
+
+ #include "modules/video_coding/utility/ivf_file_reader.h"
+
++#include <cstring>
+ #include <string>
+ #include <vector>
+
+diff -up chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h.missing-header-files chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h
+--- chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/base/prediction/kalman_filter.h 2023-11-06 14:34:01.814869110 +0100
+@@ -7,6 +7,8 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
++
+ #include "base/component_export.h"
+ #include "ui/gfx/geometry/matrix3_f.h"
+
+diff -up chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h.missing-header-files chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h
+--- chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/gfx/geometry/linear_gradient.h 2023-11-06 14:34:01.812869068 +0100
+@@ -7,6 +7,7 @@
+
+ #include <stdint.h>
+
++#include <cstdint>
+ #include <array>
+ #include <cstddef>
+ #include <cstdint>
+diff -up chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h.missing-header-files chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h
+--- chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h.missing-header-files 2023-11-01 19:11:28.000000000 +0100
++++ chromium-119.0.6045.105/ui/gfx/linux/drm_util_linux.h 2023-11-06 14:34:01.819869217 +0100
+@@ -9,6 +9,8 @@
+
+ #include "ui/gfx/buffer_types.h"
+
++#include <cstdint>
++
+ namespace ui {
+
+ int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format);
diff --git a/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch b/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
new file mode 100644
index 0000000000000..61239e7f02276
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-mnemonic-error.patch
@@ -0,0 +1,12 @@
+diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn.mnemonic-error chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn
+--- chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn.mnemonic-error 2023-12-19 18:14:43.027723832 +0100
++++ chromium-121.0.6167.16/third_party/blink/renderer/core/BUILD.gn 2023-12-19 18:39:47.492384620 +0100
+@@ -1731,8 +1731,6 @@ action_foreach("element_locator_test_pro
+ python_path_root = "${root_out_dir}/pyproto"
+ python_path_proto = "${python_path_root}/third_party/blink/renderer/core/lcp_critical_path_predictor"
+
+- mnemonic = "ELOC_PROTO"
+-
+ source_dir = "lcp_critical_path_predictor/test_proto"
+ sources = rebase_path([ "lcp_image_id.asciipb" ], "", source_dir)
+ sources += rebase_path([ "lcp_image_id_b.asciipb" ], "", source_dir)
diff --git a/srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch b/srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
similarity index 75%
rename from srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch
rename to srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
index b1d987adeff8d..332a91ad06b3d 100644
--- a/srcpkgs/chromium/patches/chromium-120-no_matching_constructor.patch
+++ b/srcpkgs/chromium/patches/chromium-121-no_matching_constructor.patch
@@ -114,9 +114,9 @@ diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_per
+ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal};
}
- buttons.emplace_back(l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
-- ButtonType::kAllow, ui::ButtonStyle::kTonal);
+- ButtonType::kAllow, ui::ButtonStyle::kTonal, kAllowId);
+ buttons.emplace_back() = {l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
-+ ButtonType::kAllow, ui::ButtonStyle::kTonal};
++ ButtonType::kAllow, ui::ButtonStyle::kTonal, kAllowId};
return buttons;
}
@@ -145,55 +145,6 @@ diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_per
return buttons;
}
-diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.no_matching_constructor chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc
---- chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.no_matching_constructor 2023-11-29 22:39:53.000000000 +0100
-+++ chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc 2023-12-03 17:31:25.756420342 +0100
-@@ -63,18 +63,18 @@ EmbeddedPermissionPromptPreviouslyDenied
- std::vector<EmbeddedPermissionPromptPreviouslyDeniedView::ButtonConfiguration>
- EmbeddedPermissionPromptPreviouslyDeniedView::GetButtonsConfiguration() const {
- std::vector<ButtonConfiguration> buttons;
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_NOT_ALLOWING),
-- ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal};
-
- if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
-- ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal);
-+ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal};
- } else {
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
-- ButtonType::kAllow, ui::ButtonStyle::kTonal);
-+ ButtonType::kAllow, ui::ButtonStyle::kTonal};
- }
- return buttons;
- }
-diff -up chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.no_matching_constructor chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc
---- chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.no_matching_constructor 2023-11-29 22:39:53.000000000 +0100
-+++ chromium-120.0.6099.56/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc 2023-12-03 17:31:25.750420227 +0100
-@@ -57,13 +57,13 @@ EmbeddedPermissionPromptPreviouslyGrante
- std::vector<EmbeddedPermissionPromptPreviouslyGrantedView::ButtonConfiguration>
- EmbeddedPermissionPromptPreviouslyGrantedView::GetButtonsConfiguration() const {
- std::vector<ButtonConfiguration> buttons;
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_ALLOWING),
-- ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal};
-
-- buttons.emplace_back(
-+ buttons.emplace_back() = {
- l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_STOP_ALLOWING),
-- ButtonType::kStopAllowing, ui::ButtonStyle::kTonal);
-+ ButtonType::kStopAllowing, ui::ButtonStyle::kTonal};
- return buttons;
- }
-
diff -up chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc.no_matching_constructor chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc
--- chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc.no_matching_constructor 2023-11-29 22:39:54.000000000 +0100
+++ chromium-120.0.6099.56/chrome/test/chromedriver/capabilities.cc 2023-12-03 17:31:25.750420227 +0100
@@ -246,18 +197,6 @@ diff -up chromium-120.0.6099.56/components/autofill/core/browser/webdata/autofil
if (type == ADDRESS_HOME_COUNTRY) {
country_code = base::UTF16ToUTF8(s.ColumnString16(1));
-diff -up chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc.no_matching_constructor chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc
---- chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc.no_matching_constructor 2023-11-29 22:39:58.000000000 +0100
-+++ chromium-120.0.6099.56/components/password_manager/core/browser/password_manager.cc 2023-12-03 17:31:25.751420246 +0100
-@@ -630,7 +630,7 @@ void PasswordManager::OnUserModifiedNonP
- // |driver| might be empty on iOS or in tests.
- int driver_id = driver ? driver->GetId() : 0;
- possible_usernames_.Put(
-- PossibleUsernameFieldIdentifier(driver_id, renderer_id),
-+ PossibleUsernameFieldIdentifier{driver_id, renderer_id},
- PossibleUsernameData(GetSignonRealm(driver->GetLastCommittedURL()),
- renderer_id, value, base::Time::Now(), driver_id,
- autocomplete_attribute_has_username, is_likely_otp));
diff -up chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.no_matching_constructor chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc
--- chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.no_matching_constructor 2023-11-29 22:40:01.000000000 +0100
+++ chromium-120.0.6099.56/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc 2023-12-03 17:31:25.751420246 +0100
@@ -300,45 +239,6 @@ diff -up chromium-120.0.6099.56/content/browser/interest_group/interest_group_st
}
if (!interest_group_kanon_query.Succeeded()) {
return absl::nullopt;
-diff -up chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc.no_matching_constructor chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc
---- chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc.no_matching_constructor 2023-11-29 22:40:01.000000000 +0100
-+++ chromium-120.0.6099.56/content/browser/renderer_host/render_frame_host_impl.cc 2023-12-03 20:49:28.059042672 +0100
-@@ -8685,7 +8685,7 @@ void RenderFrameHostImpl::SendFencedFram
- for (const blink::FencedFrame::ReportingDestination& destination :
- destinations) {
- SendFencedFrameReportingBeaconInternal(
-- DestinationEnumEvent(event_type, event_data), destination,
-+ DestinationEnumEvent{event_type, event_data}, destination,
- /*from_renderer=*/true, attribution_reporting_runtime_features);
- }
- }
-@@ -8720,7 +8720,7 @@ void RenderFrameHostImpl::SendFencedFram
- }
-
- SendFencedFrameReportingBeaconInternal(
-- DestinationURLEvent(destination_url),
-+ DestinationURLEvent{destination_url},
- blink::FencedFrame::ReportingDestination::kBuyer,
- /*from_renderer=*/true, attribution_reporting_runtime_features);
- }
-@@ -8820,7 +8820,7 @@ void RenderFrameHostImpl::MaybeSendFence
- data = info->data;
- }
- initiator_rfh->SendFencedFrameReportingBeaconInternal(
-- AutomaticBeaconEvent(event_type, data), destination,
-+ AutomaticBeaconEvent{event_type, data}, destination,
- /*from_renderer=*/false, attribution_reporting_features,
- navigation_request.GetNavigationId());
- }
-@@ -8832,7 +8832,7 @@ void RenderFrameHostImpl::MaybeSendFence
- for (blink::FencedFrame::ReportingDestination destination :
- info->destinations) {
- initiator_rfh->SendFencedFrameReportingBeaconInternal(
-- AutomaticBeaconEvent(event_type, info->data), destination,
-+ AutomaticBeaconEvent{event_type, info->data}, destination,
- /*from_renderer=*/false, info->attribution_reporting_runtime_features,
- navigation_request.GetNavigationId());
- }
diff -up chromium-120.0.6099.56/net/dns/host_resolver_cache.cc.no_matching_constructor chromium-120.0.6099.56/net/dns/host_resolver_cache.cc
--- chromium-120.0.6099.56/net/dns/host_resolver_cache.cc.no_matching_constructor 2023-11-29 22:40:07.000000000 +0100
+++ chromium-120.0.6099.56/net/dns/host_resolver_cache.cc 2023-12-03 17:31:25.754420303 +0100
@@ -740,3 +640,306 @@ diff -up chromium-120.0.6099.56/ui/gtk/gtk_ui.cc.no_matching_constructor chromiu
}
return config;
}
+diff -up chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.than chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc
+--- chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc.than 2023-12-19 17:13:15.116949814 +0100
++++ chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_denied_view.cc 2023-12-19 17:27:18.807102716 +0100
+@@ -66,17 +66,17 @@ EmbeddedPermissionPromptPreviouslyDenied
+ std::vector<EmbeddedPermissionPromptPreviouslyDeniedView::ButtonConfiguration>
+ EmbeddedPermissionPromptPreviouslyDeniedView::GetButtonsConfiguration() const {
+ std::vector<ButtonConfiguration> buttons;
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_NOT_ALLOWING),
+- ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal);
++ ButtonType::kContinueNotAllowing, ui::ButtonStyle::kTonal};
+
+ if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW_THIS_TIME),
+- ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal, kAllowThisTimeId);
++ ButtonType::kAllowThisTime, ui::ButtonStyle::kTonal, kAllowThisTimeId};
+ } else {
+- buttons.emplace_back(l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
+- ButtonType::kAllow, ui::ButtonStyle::kTonal);
++ buttons.emplace_back() = {l10n_util::GetStringUTF16(IDS_PERMISSION_ALLOW),
++ ButtonType::kAllow, ui::ButtonStyle::kTonal};
+ }
+ return buttons;
+ }
+diff -up chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.than chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc
+--- chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc.than 2023-12-19 17:39:17.818834020 +0100
++++ chromium-121.0.6167.16/chrome/browser/ui/views/permissions/embedded_permission_prompt_previously_granted_view.cc 2023-12-19 17:44:15.346337876 +0100
+@@ -61,13 +61,13 @@ EmbeddedPermissionPromptPreviouslyGrante
+ std::vector<EmbeddedPermissionPromptPreviouslyGrantedView::ButtonConfiguration>
+ EmbeddedPermissionPromptPreviouslyGrantedView::GetButtonsConfiguration() const {
+ std::vector<ButtonConfiguration> buttons;
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_CONTINUE_ALLOWING),
+- ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal);
++ ButtonType::kContinueAllowing, ui::ButtonStyle::kTonal};
+
+- buttons.emplace_back(
++ buttons.emplace_back() = {
+ l10n_util::GetStringUTF16(IDS_EMBEDDED_PROMPT_STOP_ALLOWING),
+- ButtonType::kStopAllowing, ui::ButtonStyle::kTonal, kStopAllowingId);
++ ButtonType::kStopAllowing, ui::ButtonStyle::kTonal, kStopAllowingId};
+ return buttons;
+ }
+
+diff -up chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc.than chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc
+--- chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc.than 2023-12-19 17:39:17.819834039 +0100
++++ chromium-121.0.6167.16/components/password_manager/core/browser/password_manager.cc 2023-12-19 17:48:33.144389081 +0100
+@@ -666,7 +666,7 @@ void PasswordManager::OnUserModifiedNonP
+ it->second.last_change = base::Time::Now();
+ } else {
+ possible_usernames_.Put(
+- PossibleUsernameFieldIdentifier(driver_id, renderer_id),
++ PossibleUsernameFieldIdentifier{driver_id, renderer_id},
+ PossibleUsernameData(GetSignonRealm(driver->GetLastCommittedURL()),
+ renderer_id, value, base::Time::Now(), driver_id,
+ autocomplete_attribute_has_username,
+diff -up chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc.than chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc
+--- chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc.than 2023-12-19 17:39:17.825834156 +0100
++++ chromium-121.0.6167.16/content/browser/renderer_host/render_frame_host_impl.cc 2023-12-19 17:53:43.153283847 +0100
+@@ -8561,7 +8561,7 @@ void RenderFrameHostImpl::SendFencedFram
+ for (const blink::FencedFrame::ReportingDestination& destination :
+ destinations) {
+ SendFencedFrameReportingBeaconInternal(
+- DestinationEnumEvent(event_type, event_data), destination,
++ DestinationEnumEvent{event_type, event_data}, destination,
+ attribution_reporting_runtime_features);
+ }
+ }
+@@ -8593,7 +8593,7 @@ void RenderFrameHostImpl::SendFencedFram
+ }
+
+ SendFencedFrameReportingBeaconInternal(
+- DestinationURLEvent(destination_url),
++ DestinationURLEvent{destination_url},
+ blink::FencedFrame::ReportingDestination::kBuyer,
+ attribution_reporting_runtime_features);
+ }
+@@ -8730,7 +8730,7 @@ void RenderFrameHostImpl::MaybeSendFence
+ data = info->data;
+ }
+ initiator_rfh->SendFencedFrameReportingBeaconInternal(
+- AutomaticBeaconEvent(event_type, data), destination,
++ AutomaticBeaconEvent{event_type, data}, destination,
+ attribution_reporting_features, navigation_request.GetNavigationId());
+ }
+ } else {
+@@ -8741,7 +8741,7 @@ void RenderFrameHostImpl::MaybeSendFence
+ for (blink::FencedFrame::ReportingDestination destination :
+ info->destinations) {
+ initiator_rfh->SendFencedFrameReportingBeaconInternal(
+- AutomaticBeaconEvent(event_type, info->data), destination,
++ AutomaticBeaconEvent{event_type, info->data}, destination,
+ info->attribution_reporting_runtime_features,
+ navigation_request.GetNavigationId());
+ }
+diff -up chromium-121.0.6167.57/base/nix/mime_util_xdg.cc.me chromium-121.0.6167.57/base/nix/mime_util_xdg.cc
+--- chromium-121.0.6167.57/base/nix/mime_util_xdg.cc.me 2024-01-21 16:54:15.261844448 +0100
++++ chromium-121.0.6167.57/base/nix/mime_util_xdg.cc 2024-01-21 16:55:48.705577424 +0100
+@@ -56,7 +56,7 @@ void LoadAllMimeCacheFiles(MimeTypeMap&
+ for (const auto& path : GetXDGDataSearchLocations(env.get())) {
+ FilePath mime_cache = path.Append("mime/mime.cache");
+ if (GetFileInfo(mime_cache, &info) && ParseMimeTypes(mime_cache, map)) {
+- files.emplace_back(mime_cache, info.last_modified);
++ files.emplace_back() = {mime_cache, info.last_modified};
+ }
+ }
+ }
+diff -up chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc.me chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc
+--- chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc.me 2024-01-21 18:11:31.397859608 +0100
++++ chromium-121.0.6167.57/components/performance_manager/worker_watcher.cc 2024-01-21 18:20:07.715415037 +0100
+@@ -239,7 +239,7 @@ void WorkerWatcher::OnWorkerCreated(
+ DCHECK(insertion_result.second);
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&,
+ this](const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ AddFrameClientConnection(insertion_result.first->second.get(),
+@@ -248,7 +248,7 @@ void WorkerWatcher::OnWorkerCreated(
+ [&, this](blink::DedicatedWorkerToken dedicated_worker_token) {
+ ConnectDedicatedWorkerClient(insertion_result.first->second.get(),
+ dedicated_worker_token);
+- }),
++ }},
+ creator);
+ }
+
+@@ -265,7 +265,7 @@ void WorkerWatcher::OnBeforeWorkerDestro
+ // First disconnect the creator's node from this worker node.
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&,
+ this](const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ RemoveFrameClientConnection(worker_node.get(),
+@@ -274,7 +274,7 @@ void WorkerWatcher::OnBeforeWorkerDestro
+ [&, this](blink::DedicatedWorkerToken dedicated_worker_token) {
+ DisconnectDedicatedWorkerClient(worker_node.get(),
+ dedicated_worker_token);
+- }),
++ }},
+ creator);
+
+ // Disconnect all child workers before destroying the node.
+@@ -446,7 +446,7 @@ void WorkerWatcher::OnControlleeAdded(
+ const std::string& client_uuid,
+ const content::ServiceWorkerClientInfo& client_info) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ // For window clients, it is necessary to wait until the navigation
+ // has committed to a RenderFrameHost.
+@@ -484,7 +484,7 @@ void WorkerWatcher::OnControlleeAdded(
+ ConnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+ }
+- }),
++ }},
+ client_info);
+ }
+
+@@ -524,7 +524,7 @@ void WorkerWatcher::OnControlleeRemoved(
+ return;
+
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ RemoveFrameClientConnection(worker_node, render_frame_host_id);
+ },
+@@ -534,7 +534,7 @@ void WorkerWatcher::OnControlleeRemoved(
+ },
+ [&, this](blink::SharedWorkerToken shared_worker_token) {
+ DisconnectSharedWorkerClient(worker_node, shared_worker_token);
+- }),
++ }},
+ client);
+ }
+
+@@ -810,7 +810,7 @@ void WorkerWatcher::ConnectAllServiceWor
+
+ for (const auto& kv : it->second) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](content::GlobalRenderFrameHostId render_frame_host_id) {
+ AddFrameClientConnection(service_worker_node,
+ render_frame_host_id);
+@@ -822,7 +822,7 @@ void WorkerWatcher::ConnectAllServiceWor
+ [&, this](blink::SharedWorkerToken shared_worker_token) {
+ ConnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+- }),
++ }},
+ kv.second);
+ }
+ }
+@@ -837,7 +837,7 @@ void WorkerWatcher::DisconnectAllService
+
+ for (const auto& kv : it->second) {
+ absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [&, this](
+ const content::GlobalRenderFrameHostId& render_frame_host_id) {
+ RemoveFrameClientConnection(service_worker_node,
+@@ -851,7 +851,7 @@ void WorkerWatcher::DisconnectAllService
+ [&, this](const blink::SharedWorkerToken& shared_worker_token) {
+ DisconnectSharedWorkerClient(service_worker_node,
+ shared_worker_token);
+- }),
++ }},
+ kv.second);
+ }
+ }
+diff -up chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc.me chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc
+--- chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc.me 2024-01-21 18:40:52.284389286 +0100
++++ chromium-121.0.6167.57/content/browser/first_party_sets/first_party_set_parser.cc 2024-01-21 18:41:17.276840222 +0100
+@@ -764,7 +764,7 @@ FirstPartySetParser::ParseSetsFromEnterp
+ context.GetPolicySetsFromList(
+ policy.FindList(kFirstPartySetPolicyAdditionsField),
+ PolicySetType::kAddition));
+- return ParsedPolicySetLists(std::move(replacements), std::move(additions));
++ return ParsedPolicySetLists{std::move(replacements), std::move(additions)};
+ }();
+
+ context.PostProcessSetLists(set_lists);
+diff -up chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h.me chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h
+--- chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h.me 2024-01-21 19:30:00.536387844 +0100
++++ chromium-121.0.6167.57/content/browser/interest_group/header_direct_from_seller_signals.h 2024-01-21 20:29:50.236287514 +0100
+@@ -133,6 +133,7 @@ class CONTENT_EXPORT HeaderDirectFromSel
+
+ // The Ad-Auction-Signals response served by `origin`.
+ std::string response_json;
++ UnprocessedResponse(auto u, auto s) : origin(u), response_json(s) { }
+ };
+
+ // Information from ParseAndFind() calls used by ParseAndFindCompleted.
+diff -up chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc.me chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc
+--- chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc.me 2024-01-21 21:58:48.773366301 +0100
++++ chromium-121.0.6167.57/content/browser/service_worker/service_worker_main_resource_loader_interceptor.cc 2024-01-21 22:02:17.956086167 +0100
+@@ -360,10 +360,10 @@ ServiceWorkerMainResourceLoaderIntercept
+ }
+ auto* storage_partition = process->GetStoragePartition();
+
+- return absl::visit(base::Overloaded([&, this](auto token) {
++ return absl::visit(base::Overloaded{[&, this](auto token) {
+ return GetStorageKeyFromWorkerHost(storage_partition,
+ token, origin);
+- }),
++ }},
+ *worker_token_);
+ }
+
+diff -up chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc.me chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc
+--- chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc.me 2024-01-21 22:04:30.446454697 +0100
++++ chromium-121.0.6167.57/content/browser/service_worker/service_worker_container_host.cc 2024-01-21 22:05:22.847391481 +0100
+@@ -870,7 +870,7 @@ ServiceWorkerContainerHost::GetClientTyp
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+ DCHECK(client_info_);
+ return absl::visit(
+- base::Overloaded(
++ base::Overloaded{
+ [](GlobalRenderFrameHostId render_frame_host_id) {
+ return blink::mojom::ServiceWorkerClientType::kWindow;
+ },
+@@ -879,7 +879,7 @@ ServiceWorkerContainerHost::GetClientTyp
+ },
+ [](blink::SharedWorkerToken shared_worker_token) {
+ return blink::mojom::ServiceWorkerClientType::kSharedWorker;
+- }),
++ }},
+ *client_info_);
+ }
+
+diff -up chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc.me chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc
+--- chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc.me 2024-01-21 22:37:00.969416148 +0100
++++ chromium-121.0.6167.57/content/browser/worker_host/dedicated_worker_host.cc 2024-01-21 22:38:07.754528335 +0100
+@@ -251,7 +251,7 @@ void DedicatedWorkerHost::StartScriptLoa
+ RenderFrameHostImpl* creator_render_frame_host = nullptr;
+ DedicatedWorkerHost* creator_worker = nullptr;
+
+- absl::visit(base::Overloaded(
++ absl::visit(base::Overloaded{
+ [&](const GlobalRenderFrameHostId& render_frame_host_id) {
+ creator_render_frame_host =
+ RenderFrameHostImpl::FromID(render_frame_host_id);
+@@ -259,7 +259,7 @@ void DedicatedWorkerHost::StartScriptLoa
+ [&](blink::DedicatedWorkerToken dedicated_worker_token) {
+ creator_worker = service_->GetDedicatedWorkerHostFromToken(
+ dedicated_worker_token);
+- }),
++ }},
+ creator_);
+
+ if (!creator_render_frame_host && !creator_worker) {
diff --git a/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch b/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
new file mode 100644
index 0000000000000..3defc393c084f
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-nullptr_t-without-namespace-std.patch
@@ -0,0 +1,12 @@
+diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h.than chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h
+--- chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h.than 2023-12-04 10:20:45.350540897 +0100
++++ chromium-120.0.6099.56/third_party/blink/renderer/core/paint/fragment_data_iterator.h 2023-12-04 10:23:17.335339670 +0100
+@@ -21,7 +21,7 @@ class FragmentDataIteratorBase {
+
+ public:
+ explicit FragmentDataIteratorBase(Head& head) : fragment_head_(head) {}
+- explicit FragmentDataIteratorBase(nullptr_t) {}
++ explicit FragmentDataIteratorBase(std::nullptr_t) {}
+
+ Data* GetFragmentData() const {
+ return !IsDone() ? &fragment_head_.at(idx_) : nullptr;
diff --git a/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch b/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
new file mode 100644
index 0000000000000..c2bf5b489f7a1
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-python3-invalid-escape-sequence.patch
@@ -0,0 +1,77 @@
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py.me 2024-01-15 20:48:28.177397102 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/html_generation_controller.py 2024-01-15 20:48:46.427768328 +0100
+@@ -18,7 +18,7 @@ class HTMLGenerationController(object):
+
+ def GetHTMLForInlineStylesheet(self, contents):
+ if self.current_module is None:
+- if re.search('url\(.+\)', contents):
++ if re.search(r'url\(.+\)', contents):
+ raise Exception(
+ 'Default HTMLGenerationController cannot handle inline style urls')
+ return contents
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py.me 2024-01-15 20:49:39.363845083 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/js_utils.py 2024-01-15 20:49:57.407212098 +0100
+@@ -4,4 +4,4 @@
+
+
+ def EscapeJSIfNeeded(js):
+- return js.replace('</script>', '<\/script>')
++ return js.replace(r'</script>', r'<\/script>')
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py.me 2024-01-15 20:50:11.819505254 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/parse_html_deps.py 2024-01-15 20:50:38.611050213 +0100
+@@ -293,6 +293,6 @@ class HTMLModuleParser():
+ html = ''
+ else:
+ if html.find('< /script>') != -1:
+- raise Exception('Escape script tags with <\/script>')
++ raise Exception(r'Escape script tags with <\/script>')
+
+ return HTMLModuleParserResults(html)
+diff -up chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py.me chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py
+--- chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py.me 2024-01-15 20:48:59.917042709 +0100
++++ chromium-121.0.6167.57/third_party/catapult/common/py_vulcanize/py_vulcanize/style_sheet.py 2024-01-15 20:49:24.402540761 +0100
+@@ -60,7 +60,7 @@ class ParsedStyleSheet(object):
+ return 'url(data:image/%s;base64,%s)' % (ext[1:], data.decode('utf-8'))
+
+ # I'm assuming we only have url()'s associated with images
+- return re.sub('url\((?P<quote>"|\'|)(?P<url>[^"\'()]*)(?P=quote)\)',
++ return re.sub(r'url\((?P<quote>"|\'|)(?P<url>[^"\'()]*)(?P=quote)\)',
+ InlineUrl, self.contents)
+
+ def AppendDirectlyDependentFilenamesTo(self, dependent_filenames):
+@@ -72,7 +72,7 @@ class ParsedStyleSheet(object):
+ raise Exception('@imports are not supported')
+
+ matches = re.findall(
+- 'url\((?:["|\']?)([^"\'()]*)(?:["|\']?)\)',
++ r'url\((?:["|\']?)([^"\'()]*)(?:["|\']?)\)',
+ self.contents)
+
+ def resolve_url(url):
+diff -up chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py.me chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py
+--- chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py.me 2024-01-15 20:50:56.810420400 +0100
++++ chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-tools/src/scripts/gn/generate_vulkan_icd_json.py 2024-01-15 20:52:33.506387261 +0100
+@@ -28,7 +28,7 @@ import platform
+ import sys
+
+ def glob_slash(dirname):
+- """Like regular glob but replaces \ with / in returned paths."""
++ """Like regular glob but replaces \\ with / in returned paths."""
+ return [s.replace('\\', '/') for s in glob.glob(dirname)]
+
+ def main():
+diff -up chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py.me chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py
+--- chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py.me 2024-01-15 20:52:38.016479000 +0100
++++ chromium-121.0.6167.57/third_party/vulkan-deps/vulkan-validation-layers/src/scripts/gn/generate_vulkan_layers_json.py 2024-01-15 20:52:48.863699640 +0100
+@@ -28,7 +28,7 @@ import platform
+ import sys
+
+ def glob_slash(dirname):
+- """Like regular glob but replaces \ with / in returned paths."""
++ """Like regular glob but replaces \\ with / in returned paths."""
+ return [s.replace('\\', '/') for s in glob.glob(dirname)]
+
+ def main():
diff --git a/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch b/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
new file mode 100644
index 0000000000000..4014f9a827648
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-rust-clang_lib.patch
@@ -0,0 +1,22 @@
+--- a/build/config/clang/BUILD.gn
++++ b/build/config/clang/BUILD.gn
+@@ -128,14 +128,15 @@
+ } else if (is_apple) {
+ _dir = "darwin"
+ } else if (is_linux || is_chromeos) {
++ _dir = "linux"
+ if (current_cpu == "x64") {
+- _dir = "x86_64-unknown-linux-gnu"
++ _suffix = "-x86_64"
+ } else if (current_cpu == "x86") {
+- _dir = "i386-unknown-linux-gnu"
++ _suffix = "-i386"
+ } else if (current_cpu == "arm") {
+- _dir = "armv7-unknown-linux-gnueabihf"
++ _suffix = "-armhf"
+ } else if (current_cpu == "arm64") {
+- _dir = "aarch64-unknown-linux-gnu"
++ _suffix = "-aarch64"
+ } else {
+ assert(false) # Unhandled cpu type
+ }
diff --git a/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch b/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
new file mode 100644
index 0000000000000..25c3422982933
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-rust-without-profiler_builtins.patch
@@ -0,0 +1,10 @@
+--- a/build/rust/std/BUILD.gn
++++ b/build/rust/std/BUILD.gn
+@@ -100,7 +100,6 @@
+ # don't need to pass to the C++ linker because they're used for specialized
+ # purposes.
+ skip_stdlib_files = [
+- "profiler_builtins",
+ "rustc_std_workspace_alloc",
+ "rustc_std_workspace_core",
+ "rustc_std_workspace_std",
diff --git a/srcpkgs/chromium/patches/chromium-121-system-libxml.patch b/srcpkgs/chromium/patches/chromium-121-system-libxml.patch
new file mode 100644
index 0000000000000..da463c26d323a
--- /dev/null
+++ b/srcpkgs/chromium/patches/chromium-121-system-libxml.patch
@@ -0,0 +1,24 @@
+diff -up chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor.h.me chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor.h
+--- chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor.h.me 2024-02-06 08:22:36.013021582 +0100
++++ chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor.h 2024-02-06 08:23:08.281607499 +0100
+@@ -77,7 +77,7 @@ class XSLTProcessor final : public Scrip
+
+ void reset();
+
+- static void ParseErrorFunc(void* user_data, const xmlError*);
++ static void ParseErrorFunc(void* user_data, xmlError*);
+ static void GenericErrorFunc(void* user_data, const char* msg, ...);
+
+ // Only for libXSLT callbacks
+diff -up chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc.me chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
+--- chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc.me 2024-02-06 08:14:32.368066214 +0100
++++ chromium-121.0.6167.139/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc 2024-02-06 08:23:08.282607518 +0100
+@@ -66,7 +66,7 @@ void XSLTProcessor::GenericErrorFunc(voi
+ // It would be nice to do something with this error message.
+ }
+
+-void XSLTProcessor::ParseErrorFunc(void* user_data, const xmlError* error) {
++void XSLTProcessor::ParseErrorFunc(void* user_data, xmlError* error) {
+ FrameConsole* console = static_cast<FrameConsole*>(user_data);
+ if (!console)
+ return;
diff --git a/srcpkgs/chromium/patches/chromium-120-typename.patch b/srcpkgs/chromium/patches/chromium-121-typename.patch
similarity index 78%
rename from srcpkgs/chromium/patches/chromium-120-typename.patch
rename to srcpkgs/chromium/patches/chromium-121-typename.patch
index 9a2d878b12b54..e83e62c60a54e 100644
--- a/srcpkgs/chromium/patches/chromium-120-typename.patch
+++ b/srcpkgs/chromium/patches/chromium-121-typename.patch
@@ -203,3 +203,57 @@ diff -up chromium-120.0.6099.56/third_party/blink/renderer/bindings/core/v8/asyn
ExceptionState& exception_state) = 0;
};
+diff -up chromium-121.0.6167.57/base/functional/bind_internal.h.me chromium-121.0.6167.57/base/functional/bind_internal.h
+--- chromium-121.0.6167.57/base/functional/bind_internal.h.me 2024-01-21 16:10:09.809037581 +0100
++++ chromium-121.0.6167.57/base/functional/bind_internal.h 2024-01-21 16:46:33.759397303 +0100
+@@ -1533,11 +1533,11 @@ template <int i,
+ typename Param>
+ struct ParamCanBeBound {
+ private:
+- using UnwrappedParam = BindArgument<i>::template ForwardedAs<
++ using UnwrappedParam = typename BindArgument<i>::template ForwardedAs<
+ Unwrapped>::template ToParamWithType<Param>;
+- using ParamStorage = BindArgument<i>::template ToParamWithType<
++ using ParamStorage = typename BindArgument<i>::template ToParamWithType<
+ Param>::template StoredAs<Storage>;
+- using BoundStorage =
++ using BoundStorage = typename
+ BindArgument<i>::template BoundAs<Arg>::template StoredAs<Storage>;
+
+ // We forbid callbacks from using raw_ptr as a parameter. However, we allow
+diff -up chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h
+--- chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me 2024-01-21 17:23:37.786606428 +0100
++++ chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h 2024-01-21 17:23:58.582127103 +0100
+@@ -90,7 +90,7 @@ template <typename Container>
+ { c[i] } -> std::same_as<typename Container::reference>;
+ }
+ struct ArrayTraits<Container> {
+- using Element = Container::value_type;
++ using Element = typename Container::value_type;
+
+ // vector-like containers have no built-in null.
+ static bool IsNull(const Container& c) { return false; }
+diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h
+--- chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me 2024-01-21 17:33:40.030897838 +0100
++++ chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h 2024-01-21 17:34:11.518705266 +0100
+@@ -25,7 +25,7 @@ void SetExecutionRequestTemplate(
+
+ // Request is set by the feature and should always be typed.
+ auto typed_request =
+- static_cast<const FeatureType::Request&>(request_metadata);
++ static_cast<const typename FeatureType::Request&>(request_metadata);
+ *(logging_data->mutable_request_data()) = typed_request;
+ }
+
+diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h
+--- chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me 2024-01-21 17:32:42.367417619 +0100
++++ chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h 2024-01-21 17:33:25.732531198 +0100
+@@ -29,7 +29,7 @@ class ModelQualityLogEntry {
+ }
+
+ template <typename FeatureType>
+- FeatureType::Quality* quality_data() {
++ typename FeatureType::Quality* quality_data() {
+ return FeatureType::GetLoggingData(*log_ai_data_request_)
+ ->mutable_quality_data();
+ }
diff --git a/srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch b/srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
similarity index 75%
rename from srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch
rename to srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
index b06e29f29047a..192b0692fbf73 100644
--- a/srcpkgs/chromium/patches/chromium-120-workaround_clang_bug-structured_binding.patch
+++ b/srcpkgs/chromium/patches/chromium-121-workaround_clang_bug-structured_binding.patch
@@ -25,27 +25,29 @@ diff -up chromium-115.0.5790.32/content/browser/service_worker/service_worker_co
DCHECK(document_url.is_valid());
TRACE_EVENT1("ServiceWorker",
-diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc
---- chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me 2023-12-03 22:17:50.922083200 +0100
-+++ chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-03 22:22:55.437484343 +0100
-@@ -3447,7 +3447,8 @@ void GridLayoutAlgorithm::PlaceGridItems
+diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc
+--- chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than 2023-12-19 17:57:56.205197246 +0100
++++ chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-19 18:10:13.778634531 +0100
+@@ -3527,8 +3527,8 @@ void GridLayoutAlgorithm::PlaceGridItems
DCHECK(out_row_break_between);
- const auto& container_space = ConstraintSpace();
+ const auto& container_space = GetConstraintSpace();
- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData();
+-
+ const auto& [grid_items, l_d, tree_size] = sizing_tree.TreeRootData();
+ const auto& layout_data = l_d;
-
const auto* cached_layout_subtree = container_space.GetGridLayoutSubtree();
const auto container_writing_direction =
-@@ -3611,7 +3612,9 @@ void GridLayoutAlgorithm::PlaceGridItems
+ container_space.GetWritingDirection();
+@@ -3691,8 +3691,9 @@ void GridLayoutAlgorithm::PlaceGridItems
// TODO(ikilpatrick): Update |SetHasSeenAllChildren| and early exit if true.
- const auto& constraint_space = ConstraintSpace();
+ const auto& constraint_space = GetConstraintSpace();
- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData();
+-
+ const auto& [g_i, l_d, tree_size] = sizing_tree.TreeRootData();
+ const auto& grid_items = g_i;
+ const auto& layout_data = l_d;
-
const auto* cached_layout_subtree = constraint_space.GetGridLayoutSubtree();
const auto container_writing_direction =
+ constraint_space.GetWritingDirection();
diff --git a/srcpkgs/chromium/patches/cross-build.patch b/srcpkgs/chromium/patches/cross-build.patch
index 53df490bac97a..59e1bff61f3ce 100644
--- a/srcpkgs/chromium/patches/cross-build.patch
+++ b/srcpkgs/chromium/patches/cross-build.patch
@@ -1,16 +1,5 @@
--- a/build/config/compiler/BUILD.gn.orig
+++ b/build/config/compiler/BUILD.gn
-@@ -55,6 +55,10 @@
- }
-
- declare_args() {
-+ is_musl = false
-+}
-+
-+declare_args() {
- # Normally, Android builds are lightly optimized, even for debug builds, to
- # keep binary size down. Setting this flag to true disables such optimization
- android_full_debug = false
@@ -917,8 +917,13 @@
} else if (current_cpu == "arm64") {
if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
diff --git a/srcpkgs/chromium/patches/gcc13-wnoerror.patch b/srcpkgs/chromium/patches/gcc13-wnoerror.patch
deleted file mode 100644
index c069aa41b2d09..0000000000000
--- a/srcpkgs/chromium/patches/gcc13-wnoerror.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-https://gn.googlesource.com/gn/+/c7b223bfb225ce87a72a244d016ffdfcf227fa5e%5E%21/
-Ignore build warning -Werror=redundant-move
-
-gcc-13 complains with:
-error: redundant move in return statement [-Werror=redundant-move]
-
-We cannot fix the code, because both old versions of gcc and the windows
-toolchain fails to build.
-index adb622a..232e536 100755
---- a/tools/gn/build/gen.py
-+++ b/tools/gn/build/gen.py
-
-@@ -472,6 +472,8 @@
- # flags not supported by gcc/g++.
- if cxx == 'clang++':
- cflags.extend(['-Wrange-loop-analysis', '-Wextra-semi-stmt'])
-+ else:
-+ cflags.append('-Wno-redundant-move')
-
- if platform.is_linux() or platform.is_mingw() or platform.is_msys():
- ldflags.append('-Wl,--as-needed')
diff --git a/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch b/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
deleted file mode 100644
index dae1adde0bc66..0000000000000
--- a/srcpkgs/chromium/patches/unbundle-ffmpeg-av_stream_get_first_dts.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/build/linux/unbundle/ffmpeg.gn b/build/linux/unbundle/ffmpeg.gn
-index 16e20744706..6a079b32221 100644
---- a/build/linux/unbundle/ffmpeg.gn
-+++ b/build/linux/unbundle/ffmpeg.gn
-@@ -12,6 +12,7 @@ pkg_config("system_ffmpeg") {
- "libavformat",
- "libavutil",
- ]
-+ defines = [ "av_stream_get_first_dts(stream)=stream->first_dts" ]
- }
-
- buildflag_header("ffmpeg_features") {
diff --git a/srcpkgs/chromium/template b/srcpkgs/chromium/template
index 5613fa3813822..22947e83cb52c 100644
--- a/srcpkgs/chromium/template
+++ b/srcpkgs/chromium/template
@@ -1,15 +1,15 @@
# Template file for 'chromium'
pkgname=chromium
# See https://chromiumdash.appspot.com/releases?platform=Linux for the latest version
-version=120.0.6099.129
+version=121.0.6167.160
revision=1
archs="i686* x86_64* aarch64* armv7l*"
hostmakedepends="
- $(vopt_if clang "clang lld llvm15")
+ $(vopt_if clang "clang17 lld17 llvm17 compiler-rt")
bison git gperf hwids ninja nodejs perl pkg-config python3
- libepoxy-devel libevent-devel libglib-devel"
+ libepoxy-devel libevent-devel libglib-devel rust"
makedepends="
- alsa-lib-devel libdav1d-devel brotli-devel cups-devel elfutils-devel ffmpeg-devel
+ alsa-lib-devel libdav1d-devel brotli-devel cups-devel elfutils-devel
fontconfig-devel freetype-devel gtk+3-devel libXScrnSaver-devel
libXcomposite-devel libXcursor-devel libXdamage-devel libXi-devel libXrandr-devel
libavif-devel libcap-devel libcurl-devel libdrm-devel libevent-devel
@@ -18,6 +18,7 @@ makedepends="
libxslt-devel minizip-devel mit-krb5-devel nss-devel opus-devel
pciutils-devel snappy-devel speech-dispatcher-devel speex-devel
xcb-proto zlib-devel libaom-devel libffi-devel libevdev-devel
+ compiler-rt
$(vopt_if pipewire pipewire-devel)
$(vopt_if pulseaudio pulseaudio-devel)
$(vopt_if sndio sndio-devel)"
@@ -27,7 +28,7 @@ maintainer="Duncaen <duncaen@voidlinux.org>"
license="BSD-3-Clause"
homepage="https://www.chromium.org/"
distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/${pkgname}-${version}.tar.xz"
-checksum=be36d5abecfafdc68d9b27b0bee65136316610a295e844b99483a7520b245f85
+checksum=4586673899383d30e9d95fa3a9c5f8160f32a9d5789e40be82abf3e4dd9cc3df
lib32disabled=yes
@@ -50,7 +51,7 @@ if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" libX11-devel libxcb-devel pciutils-devel libXext-devel libglvnd-devel
libjpeg-turbo-devel libXi-devel nss-devel libpng-devel libwebp-devel
libxml2-devel $(vopt_if pulseaudio pulseaudio-devel) libxslt-devel libxkbcommon-devel
- $(vopt_if pipewire pipewire-devel) ffmpeg-devel opus-devel pango-devel libva-devel
+ $(vopt_if pipewire pipewire-devel) opus-devel pango-devel libva-devel
libcurl-devel snappy-devel libXrandr-devel libXcomposite-devel cups-devel
mit-krb5-devel alsa-lib-devel libXdamage-devel libepoxy-devel libevdev-devel
libavif-devel libaom-devel libdav1d-devel libflac-devel
@@ -63,7 +64,7 @@ fi
if [ "$CROSS_BUILD" ]; then
case "${XBPS_TARGET_MACHINE}" in
- aarch64*) ;;
+ # aarch64*) ;;
*) nocross="chromium can not be cross compiled for this architecture" ;;
esac
fi
@@ -133,7 +134,7 @@ _setup_toolchain() {
}
do_configure() {
- local system="" conf=()
+ local system=() conf=()
# compile gn early, so it can be used to generate gni stuff
AR="ar" CC=$CC_FOR_BUILD CXX=$CXX_FOR_BUILD LD=$CXX_FOR_BUILD \
@@ -153,8 +154,9 @@ do_configure() {
# XXX: harfbuzz-ng use builtin one until system-wide is updated >=3.0.0
# libcxx https://github.com/llvm/llvm-project/issues/61705:
# snappy
- system="
- ffmpeg
+ # ffmpeg: system ffmpeg is too old and makes the ffmpeg update not require
+ # rebuilding chromium
+ system=(
flac
fontconfig
freetype
@@ -166,12 +168,12 @@ do_configure() {
libxml
libxslt
opus
- "
+ )
# remove build scripts for system provided dependencies - basically does the
# same as the bundeled script to remove bundeled libs, but this way we don't
# have to list the remaining libs
- for LIB in ${system} libjpeg_turbo; do
+ for LIB in "${system[@]}" libjpeg_turbo; do
find "third_party/$LIB" -type f \
\! -path "third_party/$LIB/chromium/*" \
\! -path "third_party/$LIB/google/*" \
@@ -182,13 +184,13 @@ do_configure() {
done
# switch to system provided dependencies
- build/linux/unbundle/replace_gn_files.py --system-libraries ${system}
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${system[@]}"
third_party/libaddressinput/chromium/tools/update-strings.py
+ local clang_version="$(clang -dumpversion)"
conf=(
'enable_nacl=false'
- 'enable_rust=false'
'use_sysroot=false'
@@ -198,12 +200,15 @@ do_configure() {
"use_lld=$(vopt_if clang true false)"
'clang_use_chrome_plugins=false'
'clang_base_path="/usr"'
+ "clang_version=\"${clang_version%%.*}\""
"gold_path=\"${XBPS_CROSS_BASE}/usr/bin/ld.gold\""
"use_custom_libcxx=$(vopt_if libcxx true false)" # https://github.com/llvm/llvm-project/issues/61705
'use_gold=false'
+ 'enable_rust=true'
'rust_sysroot_absolute="/usr"'
+ "rustc_version=\"$(rustc --version)\""
# is_debug makes the build a debug build, changes some things.
# might be useful for real debugging vs just debug symbols.
@@ -293,6 +298,9 @@ do_configure() {
}
do_build() {
+ # XXX: need for error: the option `Z` is only accepted on the nightly compiler
+ export RUSTC_BOOTSTRAP=1
+
_setup_toolchain
CCACHE_SLOPPINESS=include_file_mtime ninja -C out/Release ${makejobs} chrome chromedriver.unstripped chrome_crashpad_handler
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PR PATCH] [Closed]: chromium: update to 121.0.6167.85.
2024-01-25 15:39 [PR PATCH] chromium: update to 121.0.6167.85 Duncaen
` (2 preceding siblings ...)
2024-02-12 0:49 ` Duncaen
@ 2024-02-12 0:50 ` Duncaen
3 siblings, 0 replies; 5+ messages in thread
From: Duncaen @ 2024-02-12 0:50 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 250 bytes --]
There's a closed pull request on the void-packages repository
chromium: update to 121.0.6167.85.
https://github.com/void-linux/void-packages/pull/48367
Description:
[ci skip]
* [ ] x86_64-glibc
* [ ] x86_64-musl
* [ ] aarch64-musl
* [ ] i686
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-02-12 0:50 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-25 15:39 [PR PATCH] chromium: update to 121.0.6167.85 Duncaen
2024-02-10 23:38 ` [PR PATCH] [Updated] " Duncaen
2024-02-11 1:46 ` Duncaen
2024-02-12 0:49 ` Duncaen
2024-02-12 0:50 ` [PR PATCH] [Closed]: " Duncaen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).