chromium 143.0.7499.109 #21
3
.gitignore
vendored
3
.gitignore
vendored
@@ -1 +1,4 @@
|
||||
.osc
|
||||
*.patch~
|
||||
*-build/
|
||||
.*.swp
|
||||
|
||||
@@ -1,9 +1,14 @@
|
||||
README for SUSE packagers
|
||||
README for openSUSE packagers
|
||||
=========================
|
||||
Patches for chromium can typically be found in the following places:
|
||||
|
||||
Stephan Hartmann - https://github.com/stha09/chromium-patches/releases
|
||||
Gentoo - https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
|
||||
Debian - https://salsa.debian.org/chromium-team/chromium/-/tree/master/debian/patches
|
||||
Exherbo - https://gitlab.exherbo.org/exherbo/desktop/-/tree/master/packages/net-www/chromium-beta
|
||||
Fedora - https://src.fedoraproject.org/rpms/chromium/tree/rawhide
|
||||
Gentoo - https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
|
||||
|
||||
Defunct:
|
||||
Stephan Hartmann - https://github.com/stha09/chromium-patches/releases
|
||||
Arch - https://github.com/archlinux/svntogit-packages/tree/packages/chromium/trunk
|
||||
Arch: https://gitlab.com/Matt.Jolly/chromium-patches/
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
Index: chromium-142.0.7444.3/build/config/compiler/BUILD.gn
|
||||
===================================================================
|
||||
--- chromium-141.0.7378.3.orig/build/config/compiler/BUILD.gn
|
||||
+++ chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
@@ -337,9 +337,7 @@ config("compiler") {
|
||||
--- chromium-142.0.7444.3.orig/build/config/compiler/BUILD.gn
|
||||
+++ chromium-142.0.7444.3/build/config/compiler/BUILD.gn
|
||||
@@ -345,9 +345,7 @@ config("compiler") {
|
||||
|
||||
configs += [
|
||||
# See the definitions below.
|
||||
@@ -12,7 +12,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
":compiler_codegen",
|
||||
":compiler_deterministic",
|
||||
":clang_warning_suppression",
|
||||
@@ -634,64 +632,6 @@ config("compiler") {
|
||||
@@ -657,61 +655,6 @@ config("compiler") {
|
||||
ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
|
||||
}
|
||||
|
||||
@@ -41,9 +41,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
-
|
||||
- # TODO(crbug.com/40283598): This causes binary size growth and potentially
|
||||
- # other problems.
|
||||
- # TODO(crbug.com/40284925): This isn't supported by Cronet's mainline llvm version.
|
||||
- if (default_toolchain != "//build/toolchain/cros:target" &&
|
||||
- !llvm_android_mainline) {
|
||||
- if (default_toolchain != "//build/toolchain/cros:target") {
|
||||
- cflags += [
|
||||
- "-mllvm",
|
||||
- "-split-threshold-for-reg-with-hint=0",
|
||||
@@ -68,8 +66,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
- # TODO(crbug.com/376278218): This causes segfault on Linux ARM builds.
|
||||
- # It also causes segfault on Linux s390x:
|
||||
- # https://github.com/llvm/llvm-project/issues/149511
|
||||
- if (is_linux && use_lld && !llvm_android_mainline && current_cpu != "arm" &&
|
||||
- current_cpu != "s390x") {
|
||||
- if (is_linux && use_lld && current_cpu != "arm" && current_cpu != "s390x") {
|
||||
- cflags += [ "-Wa,--crel,--allow-experimental-crel" ]
|
||||
- }
|
||||
- }
|
||||
@@ -77,7 +74,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
# C11/C++11 compiler flags setup.
|
||||
# ---------------------------
|
||||
if (is_linux || is_chromeos || is_android || current_os == "aix") {
|
||||
@@ -1642,43 +1582,6 @@ config("compiler_deterministic") {
|
||||
@@ -1683,43 +1626,6 @@ config("compiler_deterministic") {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,7 +118,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
# Tells the compiler not to use absolute paths when passing the default
|
||||
# paths to the tools it invokes. We don't want this because we don't
|
||||
# really need it and it can mess up the RBE cache entries.
|
||||
@@ -1705,87 +1608,6 @@ config("compiler_deterministic") {
|
||||
@@ -1746,88 +1652,6 @@ config("compiler_deterministic") {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -179,7 +176,8 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
- "clang_revision=\"$_clang_revision\" but clang_version=\"$clang_version\". clang_version in build/toolchain/toolchain.gni is likely outdated.")
|
||||
- }
|
||||
-
|
||||
- if (toolchain_has_rust && _perform_consistency_checks) {
|
||||
- if (toolchain_has_rust && _perform_consistency_checks &&
|
||||
- !rust_force_head_revision) {
|
||||
- # Ensure that the synced rust version matches what's in git.
|
||||
- _rust_revision_lines =
|
||||
- filter_include(read_file("//tools/rust/update_rust.py", "list lines"),
|
||||
@@ -209,7 +207,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
# Controls the usage of a warning suppression mapping (WSM) file to suppress
|
||||
# warnings based on the path of the file they come from. It's controlled by the
|
||||
# `clang_warning_suppression_file` gn argument , which points to a text file
|
||||
@@ -2286,10 +2108,6 @@ config("chromium_code") {
|
||||
@@ -2318,10 +2142,6 @@ config("chromium_code") {
|
||||
}
|
||||
} else {
|
||||
cflags = [ "-Wall" ]
|
||||
@@ -220,7 +218,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
|
||||
# In Chromium code, we define __STDC_foo_MACROS in order to get the
|
||||
# C99 macros on Mac and Linux.
|
||||
@@ -2298,24 +2116,6 @@ config("chromium_code") {
|
||||
@@ -2330,24 +2150,6 @@ config("chromium_code") {
|
||||
"__STDC_FORMAT_MACROS",
|
||||
]
|
||||
|
||||
@@ -245,7 +243,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
if (is_apple) {
|
||||
cflags_objc = [ "-Wimplicit-retain-self" ]
|
||||
cflags_objcc = [ "-Wimplicit-retain-self" ]
|
||||
@@ -2735,7 +2535,8 @@ config("default_stack_frames") {
|
||||
@@ -2775,7 +2577,8 @@ config("default_stack_frames") {
|
||||
# [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000
|
||||
# [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000
|
||||
# [2]: https://crrev.com/c/5447532
|
||||
@@ -255,7 +253,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
if (is_win) {
|
||||
# clang-cl's /O2 corresponds to clang's -O3, and really want -O2 for
|
||||
# consistency with the other platforms.
|
||||
@@ -2784,7 +2585,8 @@ config("optimize") {
|
||||
@@ -2824,7 +2627,8 @@ config("optimize") {
|
||||
}
|
||||
|
||||
# Turn off optimizations.
|
||||
@@ -265,7 +263,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
if (is_win) {
|
||||
cflags = [
|
||||
"/Od", # Disable optimization.
|
||||
@@ -2819,7 +2621,8 @@ config("no_optimize") {
|
||||
@@ -2859,7 +2663,8 @@ config("no_optimize") {
|
||||
# Turns up the optimization level. Used to explicitly enable -O2 instead of
|
||||
# -Os for select targets on platforms that use optimize_for_size. No-op
|
||||
# elsewhere.
|
||||
@@ -275,7 +273,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
ldflags = common_optimize_on_ldflags
|
||||
if (is_win) {
|
||||
# Favor speed over size, /O2 must be before the common flags.
|
||||
@@ -2840,7 +2643,8 @@ config("optimize_max") {
|
||||
@@ -2880,7 +2685,8 @@ config("optimize_max") {
|
||||
#
|
||||
# TODO(crbug.com/41259697) - rework how all of these configs are related
|
||||
# so that we don't need this disclaimer.
|
||||
@@ -285,7 +283,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
ldflags = common_optimize_on_ldflags
|
||||
if (is_win) {
|
||||
# Favor speed over size, /O2 must be before the common flags.
|
||||
@@ -2857,7 +2661,8 @@ config("optimize_speed") {
|
||||
@@ -2897,7 +2703,8 @@ config("optimize_speed") {
|
||||
rustflags = [ "-Copt-level=3" ]
|
||||
}
|
||||
|
||||
@@ -295,7 +293,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
cflags = [ "-O1" ] + common_optimize_on_cflags
|
||||
rustflags = [ "-Copt-level=1" ]
|
||||
ldflags = common_optimize_on_ldflags
|
||||
@@ -2984,7 +2789,8 @@ config("win_pdbaltpath") {
|
||||
@@ -3024,7 +2831,8 @@ config("win_pdbaltpath") {
|
||||
}
|
||||
|
||||
# Full symbols.
|
||||
@@ -305,7 +303,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
rustflags = []
|
||||
configs = []
|
||||
if (is_win) {
|
||||
@@ -3140,7 +2946,8 @@ config("symbols") {
|
||||
@@ -3189,7 +2997,8 @@ config("symbols") {
|
||||
# Minimal symbols.
|
||||
# This config guarantees to hold symbol for stack trace which are shown to user
|
||||
# when crash happens in unittests running on buildbot.
|
||||
@@ -315,7 +313,7 @@ Index: chromium-141.0.7378.3/build/config/compiler/BUILD.gn
|
||||
rustflags = []
|
||||
if (is_win) {
|
||||
# Functions, files, and line tables only.
|
||||
@@ -3216,7 +3023,8 @@ config("minimal_symbols") {
|
||||
@@ -3265,7 +3074,8 @@ config("minimal_symbols") {
|
||||
# This configuration contains function names only. That is, the compiler is
|
||||
# told to not generate debug information and the linker then just puts function
|
||||
# names in the final debug information.
|
||||
|
||||
@@ -10,9 +10,9 @@ author: Andres Salomon <dilinger@debian.org>
|
||||
34 | .strict = true};
|
||||
| ~~~~~~~~~~~~~~~
|
||||
|
||||
--- a/services/network/shared_dictionary/simple_url_pattern_matcher.cc
|
||||
+++ b/services/network/shared_dictionary/simple_url_pattern_matcher.cc
|
||||
@@ -28,17 +28,17 @@ namespace network {
|
||||
--- a/components/url_pattern/simple_url_pattern_matcher.cc
|
||||
+++ b/components/url_pattern/simple_url_pattern_matcher.cc
|
||||
@@ -29,17 +29,17 @@
|
||||
namespace {
|
||||
|
||||
// https://urlpattern.spec.whatwg.org/#default-options
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
Index: chromium-141.0.7378.3/media/base/media_switches.h
|
||||
Index: chromium-142.0.7444.3/media/base/media_switches.h
|
||||
===================================================================
|
||||
--- chromium-141.0.7378.3.orig/media/base/media_switches.h
|
||||
+++ chromium-141.0.7378.3/media/base/media_switches.h
|
||||
@@ -519,6 +519,8 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(
|
||||
--- chromium-142.0.7444.3.orig/media/base/media_switches.h
|
||||
+++ chromium-142.0.7444.3/media/base/media_switches.h
|
||||
@@ -521,6 +521,8 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(
|
||||
|
||||
MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseWindowBoundsForPip);
|
||||
|
||||
@@ -11,11 +11,11 @@ Index: chromium-141.0.7378.3/media/base/media_switches.h
|
||||
MEDIA_EXPORT BASE_DECLARE_FEATURE(kMediaLogToConsole);
|
||||
|
||||
MEDIA_EXPORT BASE_DECLARE_FEATURE(kLibvpxUseChromeThreads);
|
||||
Index: chromium-141.0.7378.3/media/base/media_switches.cc
|
||||
Index: chromium-142.0.7444.3/media/base/media_switches.cc
|
||||
===================================================================
|
||||
--- chromium-141.0.7378.3.orig/media/base/media_switches.cc
|
||||
+++ chromium-141.0.7378.3/media/base/media_switches.cc
|
||||
@@ -1687,6 +1687,11 @@ bool IsRestrictOwnAudioSupported() {
|
||||
--- chromium-142.0.7444.3.orig/media/base/media_switches.cc
|
||||
+++ chromium-142.0.7444.3/media/base/media_switches.cc
|
||||
@@ -1690,6 +1690,11 @@ bool IsRestrictOwnAudioSupported() {
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -27,19 +27,19 @@ Index: chromium-141.0.7378.3/media/base/media_switches.cc
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
bool IsMediaFoundationD3D11VideoCaptureEnabled() {
|
||||
return base::FeatureList::IsEnabled(kMediaFoundationD3D11VideoCapture);
|
||||
Index: chromium-141.0.7378.3/media/ffmpeg/ffmpeg_common.cc
|
||||
Index: chromium-142.0.7444.3/media/ffmpeg/ffmpeg_common.cc
|
||||
===================================================================
|
||||
--- chromium-141.0.7378.3.orig/media/ffmpeg/ffmpeg_common.cc
|
||||
+++ chromium-141.0.7378.3/media/ffmpeg/ffmpeg_common.cc
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "media/base/audio_decoder_config.h"
|
||||
--- chromium-142.0.7444.3.orig/media/ffmpeg/ffmpeg_common.cc
|
||||
+++ chromium-142.0.7444.3/media/ffmpeg/ffmpeg_common.cc
|
||||
@@ -17,6 +17,7 @@
|
||||
#include "media/base/audio_timestamp_helper.h"
|
||||
#include "media/base/decoder_buffer.h"
|
||||
#include "media/base/encryption_scheme.h"
|
||||
+#include "media/base/media_switches.h"
|
||||
#include "media/base/media_util.h"
|
||||
#include "media/base/supported_types.h"
|
||||
#include "media/base/video_aspect_ratio.h"
|
||||
@@ -72,7 +73,8 @@ const char* GetAllowedVideoDecoders() {
|
||||
@@ -73,7 +74,8 @@ const char* GetAllowedVideoDecoders() {
|
||||
void ApplyCodecContextSecuritySettings(AVCodecContext* codec_context) {
|
||||
// Future versions of ffmpeg may copy the allow list from the format
|
||||
// context.
|
||||
@@ -49,10 +49,10 @@ Index: chromium-141.0.7378.3/media/ffmpeg/ffmpeg_common.cc
|
||||
// Note: FFmpeg will try to free this string, so we must duplicate it.
|
||||
codec_context->codec_whitelist =
|
||||
av_strdup(codec_context->codec_type == AVMEDIA_TYPE_AUDIO
|
||||
Index: chromium-141.0.7378.3/media/filters/ffmpeg_glue.cc
|
||||
Index: chromium-142.0.7444.3/media/filters/ffmpeg_glue.cc
|
||||
===================================================================
|
||||
--- chromium-141.0.7378.3.orig/media/filters/ffmpeg_glue.cc
|
||||
+++ chromium-141.0.7378.3/media/filters/ffmpeg_glue.cc
|
||||
--- chromium-142.0.7444.3.orig/media/filters/ffmpeg_glue.cc
|
||||
+++ chromium-142.0.7444.3/media/filters/ffmpeg_glue.cc
|
||||
@@ -137,8 +137,10 @@ FFmpegGlue::FFmpegGlue(FFmpegURLProtocol
|
||||
// memory usage.
|
||||
//
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
--- chromium-139.0.7258.66/third_party/pdfium/third_party/libopenjpeg/jp2.c 2025/08/06 10:46:12 1.1
|
||||
+++ chromium-139.0.7258.66/third_party/pdfium/third_party/libopenjpeg/jp2.c 2025/08/06 10:46:36
|
||||
@@ -2899,7 +2899,7 @@
|
||||
p_image,
|
||||
p_manager);
|
||||
|
||||
- if (p_image && *p_image) {
|
||||
+ if (ret && p_image && *p_image) {
|
||||
/* Set Image Color Space */
|
||||
if (jp2->enumcs == 16) {
|
||||
(*p_image)->color_space = OPJ_CLRSPC_SRGB;
|
||||
@@ -1,17 +1,17 @@
|
||||
Index: chromium-141.0.7378.3/build/rust/allocator/lib.rs
|
||||
Index: chromium-142.0.7444.3/build/rust/allocator/lib.rs
|
||||
===================================================================
|
||||
--- chromium-141.0.7378.3.orig/build/rust/allocator/lib.rs
|
||||
+++ chromium-141.0.7378.3/build/rust/allocator/lib.rs
|
||||
--- chromium-142.0.7444.3.orig/build/rust/allocator/lib.rs
|
||||
+++ chromium-142.0.7444.3/build/rust/allocator/lib.rs
|
||||
@@ -96,6 +96,12 @@ mod both_allocators {
|
||||
0
|
||||
}
|
||||
|
||||
+ // TODO(crbug.com/422538133) Remove after rolling past
|
||||
+ // https://github.com/rust-lang/rust/pull/141061
|
||||
+ #[no_mangle]
|
||||
+ #[unsafe(no_mangle)]
|
||||
+ #[linkage = "weak"]
|
||||
+ static __rust_no_alloc_shim_is_unstable: u8 = 0;
|
||||
+
|
||||
// Mangle the symbol name as rustc expects.
|
||||
// TODO(crbug.com/440481922): Remove this after rolling past https://github.com/rust-lang/rust/pull/143387
|
||||
#[rustc_std_internal_symbol]
|
||||
#[allow(non_upper_case_globals)]
|
||||
|
||||
Binary file not shown.
15
chromium-142-rust-revert_should_panic.patch
Normal file
15
chromium-142-rust-revert_should_panic.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
--- chromium-142.0.7444.34/build/rust/allocator/lib.rs 2025/10/22 22:02:11 1.1
|
||||
+++ chromium-142.0.7444.34/build/rust/allocator/lib.rs 2025/10/22 22:02:46
|
||||
@@ -102,6 +102,12 @@
|
||||
#[linkage = "weak"]
|
||||
static __rust_no_alloc_shim_is_unstable: u8 = 0;
|
||||
|
||||
+ // TODO(crbug.com/440481922): Remove this after rolling past https://github.com/rust-lang/rust/pull/143387
|
||||
+ #[rustc_std_internal_symbol]
|
||||
+ #[allow(non_upper_case_globals)]
|
||||
+ #[linkage = "weak"]
|
||||
+ static __rust_alloc_error_handler_should_panic: u8 = 0;
|
||||
+
|
||||
// Mangle the symbol name as rustc expects.
|
||||
#[rustc_std_internal_symbol]
|
||||
#[allow(non_upper_case_globals)]
|
||||
32
chromium-142-rust_no_sanitize.patch
Normal file
32
chromium-142-rust_no_sanitize.patch
Normal file
@@ -0,0 +1,32 @@
|
||||
Index: chromium-142.0.7444.52/third_party/crabbyavif/BUILD.gn
|
||||
===================================================================
|
||||
--- chromium-142.0.7444.52.orig/third_party/crabbyavif/BUILD.gn
|
||||
+++ chromium-142.0.7444.52/third_party/crabbyavif/BUILD.gn
|
||||
@@ -197,12 +197,12 @@ rust_static_library("crabbyavif") {
|
||||
"dav1d",
|
||||
"libyuv",
|
||||
"capi",
|
||||
- "disable_cfi",
|
||||
+ #"disable_cfi",
|
||||
]
|
||||
|
||||
# Required for disable_cfi feature.
|
||||
configs -= [ "//build/config/compiler:disallow_unstable_features" ]
|
||||
- rustflags = [ "-Zallow-features=sanitize" ]
|
||||
+ rustflags = [ "-Zallow-features=no_sanitize" ]
|
||||
|
||||
public_deps = [ ":header_files" ]
|
||||
deps = [
|
||||
Index: chromium-142.0.7444.52/third_party/crabbyavif/src/src/reformat/libyuv.rs
|
||||
===================================================================
|
||||
--- chromium-142.0.7444.52.orig/third_party/crabbyavif/src/src/reformat/libyuv.rs
|
||||
+++ chromium-142.0.7444.52/third_party/crabbyavif/src/src/reformat/libyuv.rs
|
||||
@@ -372,7 +372,7 @@ fn find_conversion_function(
|
||||
// Returns Ok(Some(false)) if only YUV was converted and alpha
|
||||
// needs to be imported separately.
|
||||
// Returns Ok(None) if the conversion is not implemented.
|
||||
-#[cfg_attr(feature = "disable_cfi", sanitize(cfi = "off"))]
|
||||
+#[cfg_attr(feature = "disable_cfi", no_sanitize(cfi))]
|
||||
pub(crate) fn yuv_to_rgb(image: &image::Image, rgb: &mut rgb::Image) -> AvifResult<Option<bool>> {
|
||||
if (rgb.depth != 8 && rgb.depth != 10) || !image.depth_valid() {
|
||||
return Ok(None); // Not implemented.
|
||||
29
chromium-143-cookie_string_view.patch
Normal file
29
chromium-143-cookie_string_view.patch
Normal file
@@ -0,0 +1,29 @@
|
||||
--- chromium-143.0.7499.4/net/cookies/cookie_util.cc 2025/11/06 13:24:15 1.1
|
||||
+++ chromium-143.0.7499.4/net/cookies/cookie_util.cc 2025/11/06 13:27:33
|
||||
@@ -841,7 +841,7 @@
|
||||
|
||||
void ParseRequestCookieLine(std::string_view header_value,
|
||||
ParsedRequestCookies* parsed_cookies) {
|
||||
- std::string::const_iterator i = header_value.begin();
|
||||
+ std::string_view::const_iterator i = header_value.begin();
|
||||
while (i != header_value.end()) {
|
||||
// Here we are at the beginning of a cookie.
|
||||
|
||||
@@ -850,7 +850,7 @@
|
||||
if (i == header_value.end()) return;
|
||||
|
||||
// Find cookie name.
|
||||
- std::string::const_iterator cookie_name_beginning = i;
|
||||
+ std::string_view::const_iterator cookie_name_beginning = i;
|
||||
while (i != header_value.end() && *i != '=') ++i;
|
||||
auto cookie_name = std::string_view(cookie_name_beginning, i);
|
||||
|
||||
@@ -859,7 +859,7 @@
|
||||
// Cookies may have no value, in this case '=' may or may not be there.
|
||||
if (i != header_value.end() && i + 1 != header_value.end()) {
|
||||
++i; // Skip '='.
|
||||
- std::string::const_iterator cookie_value_beginning = i;
|
||||
+ std::string_view::const_iterator cookie_value_beginning = i;
|
||||
if (*i == '"') {
|
||||
++i; // Skip '"'.
|
||||
while (i != header_value.end() && *i != '"') ++i;
|
||||
62
chromium-143-libpng-unbundle.patch
Normal file
62
chromium-143-libpng-unbundle.patch
Normal file
@@ -0,0 +1,62 @@
|
||||
--- chromium-143.0.7489.0/testing/libfuzzer/fuzzers/BUILD.gn 2025/10/27 00:01:26 1.1
|
||||
+++ chromium-143.0.7489.0/testing/libfuzzer/fuzzers/BUILD.gn 2025/10/27 00:01:40
|
||||
@@ -103,7 +103,7 @@
|
||||
sources = [ "libpng_read_fuzzer.cc" ]
|
||||
deps = [
|
||||
"//base",
|
||||
- "//third_party/libpng:libpng_for_testonly",
|
||||
+ "//third_party/libpng",
|
||||
]
|
||||
dict = "dicts/png.dict"
|
||||
seed_corpuses = libpng_seed_corpuses
|
||||
--- chromium-143.0.7489.0/tools/imagediff/BUILD.gn 2025/10/27 12:14:26 1.1
|
||||
+++ chromium-143.0.7489.0/tools/imagediff/BUILD.gn 2025/10/27 12:15:39
|
||||
@@ -48,7 +48,7 @@
|
||||
deps = [
|
||||
"//base",
|
||||
"//build/win:default_exe_manifest",
|
||||
- "//third_party/libpng:libpng_for_testonly",
|
||||
+ "//third_party/libpng",
|
||||
"//third_party/zlib",
|
||||
]
|
||||
}
|
||||
--- chromium-143.0.7489.0/chrome/test/BUILD.gn 2025/10/27 13:35:00 1.1
|
||||
+++ chromium-143.0.7489.0/chrome/test/BUILD.gn 2025/10/27 13:35:18
|
||||
@@ -11167,7 +11167,7 @@
|
||||
"//testing/gtest",
|
||||
"//third_party/hunspell",
|
||||
"//third_party/icu",
|
||||
- "//third_party/libpng:libpng_for_testonly",
|
||||
+ "//third_party/libpng",
|
||||
"//ui/base:test_support",
|
||||
"//ui/events:test_support",
|
||||
"//ui/ozone",
|
||||
@@ -11532,7 +11532,7 @@
|
||||
"//testing/gtest",
|
||||
"//third_party/hunspell",
|
||||
"//third_party/icu",
|
||||
- "//third_party/libpng:libpng_for_testonly",
|
||||
+ "//third_party/libpng",
|
||||
"//ui/base:base_interactive_ui_tests",
|
||||
"//ui/base:ozone_buildflags",
|
||||
"//ui/base:test_support",
|
||||
@@ -12492,7 +12492,7 @@
|
||||
"//testing/gtest",
|
||||
"//third_party/hunspell",
|
||||
"//third_party/icu",
|
||||
- "//third_party/libpng:libpng_for_testonly",
|
||||
+ "//third_party/libpng",
|
||||
"//ui/base:test_support",
|
||||
"//ui/resources:ui_test_pak",
|
||||
"//ui/views",
|
||||
--- chromium-143.0.7489.0/ui/gfx/BUILD.gn 2025/10/27 13:34:40 1.1
|
||||
+++ chromium-143.0.7489.0/ui/gfx/BUILD.gn 2025/10/27 13:34:52
|
||||
@@ -902,7 +902,7 @@
|
||||
"//skia:skcms",
|
||||
"//testing/gtest",
|
||||
"//third_party/icu:icuuc",
|
||||
- "//third_party/libpng:libpng_for_testonly",
|
||||
+ "//third_party/libpng",
|
||||
"//third_party/zlib",
|
||||
"//ui/base",
|
||||
"//ui/gfx/animation",
|
||||
66
chromium-143-revert_rust_is_multiple_of.patch
Normal file
66
chromium-143-revert_rust_is_multiple_of.patch
Normal file
@@ -0,0 +1,66 @@
|
||||
--- chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/earley/grammar.rs 2025/11/10 11:00:20 1.1
|
||||
+++ chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/earley/grammar.rs 2025/11/10 11:00:44
|
||||
@@ -1322,7 +1322,7 @@
|
||||
outp.rhs_elements.push(CSymIdx::NULL);
|
||||
outp.rhs_params.push(ParamExpr::Null);
|
||||
}
|
||||
- while !outp.rhs_elements.len().is_multiple_of(1 << RULE_SHIFT) {
|
||||
+ while outp.rhs_elements.len() % (1 << RULE_SHIFT) != 0 {
|
||||
outp.rhs_elements.push(CSymIdx::NULL);
|
||||
outp.rhs_params.push(ParamExpr::Null);
|
||||
}
|
||||
--- chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/earley/parser.rs 2025/11/10 11:00:52 1.1
|
||||
+++ chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/earley/parser.rs 2025/11/10 11:01:10
|
||||
@@ -132,7 +132,7 @@
|
||||
}
|
||||
|
||||
pub fn one_in(&mut self, n: u32) -> bool {
|
||||
- self.next().is_multiple_of(n)
|
||||
+ self.next() % n == 0
|
||||
}
|
||||
|
||||
pub fn next_alt(&mut self) -> u32 {
|
||||
--- chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/earley/regexvec.rs 2025/11/10 11:01:31 1.1
|
||||
+++ chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/earley/regexvec.rs 2025/11/10 11:01:45
|
||||
@@ -674,7 +674,7 @@
|
||||
// if lst.len() == 0 {
|
||||
// return StateID::DEAD;
|
||||
// }
|
||||
- assert!(lst.len().is_multiple_of(2));
|
||||
+ assert!(lst.len() % 2 == 0);
|
||||
let id = StateID::new(self.rx_sets.insert(&lst));
|
||||
if id.as_usize() >= self.state_descs.len() {
|
||||
let state_desc = self.compute_state_desc(id);
|
||||
--- chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/json/numeric.rs 2025/11/10 11:01:57 1.1
|
||||
+++ chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/json/numeric.rs 2025/11/10 11:02:20
|
||||
@@ -19,7 +19,7 @@
|
||||
// reduce to simplest form
|
||||
let mut coef = coef;
|
||||
let mut exp = exp;
|
||||
- while exp > 0 && coef.is_multiple_of(10) {
|
||||
+ while exp > 0 && coef % 10 == 0 {
|
||||
coef /= 10;
|
||||
exp -= 1;
|
||||
}
|
||||
--- chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/toktrie-v1/src/bytes.rs 2025/11/10 11:03:57 1.1
|
||||
+++ chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/toktrie-v1/src/bytes.rs 2025/11/10 11:04:11
|
||||
@@ -14,7 +14,7 @@
|
||||
}
|
||||
|
||||
pub fn vec_from_bytes<T: PodTrait>(bytes: &[u8]) -> Vec<T> {
|
||||
- if !bytes.len().is_multiple_of(size_of::<T>()) {
|
||||
+ if bytes.len() % size_of::<T>() != 0 {
|
||||
panic!(
|
||||
"vecT: got {} bytes, needed multiple of {}",
|
||||
bytes.len(),
|
||||
--- chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/earley/perf.rs 2025/11/10 23:43:20 1.1
|
||||
+++ chromium-143.0.7499.17/third_party/rust/chromium_crates_io/vendor/llguidance-v1/src/earley/perf.rs 2025/11/10 23:43:28
|
||||
@@ -140,7 +140,7 @@
|
||||
|
||||
for (i, c) in s.chars().enumerate() {
|
||||
// Insert a comma once we've passed 'offset' and every 3 digits after that.
|
||||
- if i != 0 && i >= offset && (i - offset).is_multiple_of(3) {
|
||||
+ if i != 0 && i >= offset && (i - offset) % 3 == 0 {
|
||||
result.push(',');
|
||||
}
|
||||
result.push(c);
|
||||
BIN
chromium-143.0.7499.109-linux.tar.xz
LFS
Normal file
BIN
chromium-143.0.7499.109-linux.tar.xz
LFS
Normal file
Binary file not shown.
126
chromium.changes
126
chromium.changes
@@ -1,3 +1,129 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 10 20:52:29 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||
|
||||
- Chromium 143.0.7499.109 (boo#1254776):
|
||||
* CVE-2025-14372: Use after free in Password Manager
|
||||
* CVE-2025-14373: Inappropriate implementation in Toolbar
|
||||
* third issue with an exploit is known to exist in the wild
|
||||
- added patch gtk-414-2.patch
|
||||
(also revert upstream cdc2a57272589f9522689500838e889b88b3f9d4
|
||||
for older gtk versions)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 2 18:49:57 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||
|
||||
- Chromium 143.0.7499.40 (boo#1254429):
|
||||
* CVE-2025-13630: Type Confusion in V8
|
||||
* CVE-2025-13631: Inappropriate implementation in Google Updater
|
||||
* CVE-2025-13632: Inappropriate implementation in DevTools
|
||||
* CVE-2025-13633: Use after free in Digital Credentials
|
||||
* CVE-2025-13634: Inappropriate implementation in Downloads
|
||||
* CVE-2025-13720: Bad cast in Loader
|
||||
* CVE-2025-13721: Race in v8
|
||||
* CVE-2025-13635: Inappropriate implementation in Downloads
|
||||
* CVE-2025-13636: Inappropriate implementation in Split View
|
||||
* CVE-2025-13637: Inappropriate implementation in Downloads
|
||||
* CVE-2025-13638: Use after free in Media Stream
|
||||
* CVE-2025-13639: Inappropriate implementation in WebRTC
|
||||
* CVE-2025-13640: Inappropriate implementation in Passwords
|
||||
- added patches:
|
||||
chromium-143-libpng-unbundle.patch
|
||||
(workaround broken libpng unbundle)
|
||||
chromium-143-cookie_string_view.patch
|
||||
(use string_view also for the const_iterator after type change)
|
||||
chromium-143-revert_rust_is_multiple_of.patch
|
||||
(revert added calls to is_multiple_of rejected as unstable feature)
|
||||
- modified patches:
|
||||
gcc-enable-lto.patch (updated context)
|
||||
chromium-127-constexpr.patch (file moved)
|
||||
chromium-140-keep-__rust_no_alloc_shim_is_unstable.patch (add unsafe)
|
||||
ppc-fedora-fix-clang-selection.patch (updated context)
|
||||
ppc-fedora-0002-regenerate-xnn-buildgn.patch (reduced to stub,
|
||||
will need updating)
|
||||
- dropped patches:
|
||||
chromium-142-iwyu-field-form-data.patch (upstream)
|
||||
- bump buildrequires for rust-bindgen to 0.71 minimum as we need
|
||||
the unsafe_extern_blocks
|
||||
- updated ppc-fedora-0002-regenerate-xnn-buildgn.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Nov 23 23:30:00 CET 2025 - Stanislav Brabec <sbrabec@suse.com>
|
||||
|
||||
- Remove unused BuildRequires: update-desktop-files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 17 23:40:26 CET 2025 - ro@suse.de
|
||||
|
||||
- Chromium 142.0.7444.175 (boo#1253698):
|
||||
* CVE-2025-13223: Type Confusion in V8
|
||||
* CVE-2025-13224: Type Confusion in V8
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 11 22:52:09 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||
|
||||
- Chromium 142.0.7444.162 (boo#1253267):
|
||||
* CVE-2025-13042: Inappropriate implementation in V8
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 6 06:14:05 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||
|
||||
- Chromium 142.0.7444.134 (boo#1253089):
|
||||
* CVE-2025-12725: Out of bounds write in WebGPU
|
||||
* CVE-2025-12726: Inappropriate implementation in Views
|
||||
* CVE-2025-12727: Inappropriate implementation in V8
|
||||
* CVE-2025-12728: Inappropriate implementation in Omnibox
|
||||
* CVE-2025-12729: Inappropriate implementation in Omnibox
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 29 04:54:55 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||
|
||||
- Chromium 142.0.7444.59, the stable channel promotion of 142
|
||||
Security fixes (boo#1252881):
|
||||
* CVE-2025-12428: Type Confusion in V8
|
||||
* CVE-2025-12429: Inappropriate implementation in V8
|
||||
* CVE-2025-12430: Object lifecycle issue in Media
|
||||
* CVE-2025-12431: Inappropriate implementation in Extensions
|
||||
* CVE-2025-12432: Race in V8
|
||||
* CVE-2025-12433: Inappropriate implementation in V8
|
||||
* CVE-2025-12434: Race in Storage
|
||||
* CVE-2025-12435: Incorrect security UI in Omnibox
|
||||
* CVE-2025-12436: Policy bypass in Extensions
|
||||
* CVE-2025-12437: Use after free in PageInfo
|
||||
* CVE-2025-12438: Use after free in Ozone
|
||||
* CVE-2025-12439: Inappropriate implementation in App-Bound Encryption
|
||||
* CVE-2025-12440: Inappropriate implementation in Autofill
|
||||
* CVE-2025-12441: Out of bounds read in V8
|
||||
* CVE-2025-12443: Out of bounds read in WebXR
|
||||
* CVE-2025-12444: Incorrect security UI in Fullscreen UI
|
||||
* CVE-2025-12445: Policy bypass in Extensions
|
||||
* CVE-2025-12446: Incorrect security UI in SplitView
|
||||
* CVE-2025-12447: Incorrect security UI in Omnibox
|
||||
- drop chromium-142-dawn_commit_hash.patch, the generation of the
|
||||
header was included in the tarball genration
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 27 10:33:34 CET 2025 - ro@suse.de
|
||||
|
||||
- Chromium 142.0.7444.52
|
||||
- added patches:
|
||||
chromium-142-rust-revert_should_panic.patch
|
||||
re-add __rust_alloc_error_handler_should_panic
|
||||
to fix unresolved symbol
|
||||
chromium-142-dawn_commit_hash.patch:
|
||||
create gpu/webgpu/dawn_commit_hash.h which should be in tarball
|
||||
chromium-142-rust_no_sanitize.patch:
|
||||
revert rust change no_sanitize to sanitize=off
|
||||
chromium-142-iwyu-field-form-data.patch
|
||||
- drop chromium-139-pdfium-openjpeg-CVE-2025-54874.patch
|
||||
- update ppc patches
|
||||
modified patches:
|
||||
ppc-fedora-0001-sandbox-linux-Implement-partial-support-for-ppc64-sy.patch#
|
||||
ppc-fedora-0001-third-party-hwy-wrong-include.patch
|
||||
ppc-fedora-0002-regenerate-xnn-buildgn.patch
|
||||
ppc-fedora-add-ppc64-architecture-to-extensions.diff
|
||||
removed patches:
|
||||
ppc-fedora-fix-ppc64-rust_png-build-error.patch (obsolete)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 21 21:52:56 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
%global official_build 1
|
||||
|
||||
Name: chromium%{n_suffix}
|
||||
Version: 141.0.7390.122
|
||||
Version: 143.0.7499.109
|
||||
Release: 0
|
||||
Summary: Google's open source browser project
|
||||
License: BSD-3-Clause AND LGPL-2.1-or-later
|
||||
@@ -128,7 +128,7 @@ NoSource: 0
|
||||
# https://github.com/evanw/esbuild/archive/refs/tags/v%%{esbuild_version}.tar.gz
|
||||
Source1: esbuild-%{esbuild_version}.tar.gz
|
||||
Source2: esbuild-%{esbuild_version}-vendor.tar.gz
|
||||
Source3: README.SUSE
|
||||
Source3: README.openSUSE
|
||||
# Toolchain definitions
|
||||
Source30: master_preferences
|
||||
Source104: chromium-symbolic.svg
|
||||
@@ -167,11 +167,15 @@ Patch371: chromium-133-bring_back_and_disable_allowlist.patch
|
||||
Patch373: chromium-134-type-mismatch-error.patch
|
||||
Patch375: chromium-131-fix-qt-ui.pach
|
||||
Patch377: chromium-139-deterministic.patch
|
||||
Patch378: chromium-139-pdfium-openjpeg-CVE-2025-54874.patch
|
||||
Patch379: chromium-140-keep-__rust_no_alloc_shim_is_unstable.patch
|
||||
Patch380: chromium-141-use_libcxx_modules.patch
|
||||
Patch381: chromium-141-csss_style_sheet.patch
|
||||
Patch382: chromium-141-no_cxx_modules.patch
|
||||
Patch383: chromium-142-rust-revert_should_panic.patch
|
||||
Patch385: chromium-142-rust_no_sanitize.patch
|
||||
Patch386: chromium-143-libpng-unbundle.patch
|
||||
Patch387: chromium-143-cookie_string_view.patch
|
||||
Patch389: chromium-143-revert_rust_is_multiple_of.patch
|
||||
# conditionally applied patches ppc64le only
|
||||
Patch401: ppc-fedora-add-ppc64-architecture-string.patch
|
||||
Patch402: ppc-fedora-0001-linux-seccomp-bpf-ppc64-glibc-workaround-in-SIGSYS-h.patch
|
||||
@@ -227,7 +231,6 @@ Patch452: ppc-fedora-dawn-fix-ppc64le-detection.patch
|
||||
Patch453: ppc-fedora-add-ppc64-architecture-to-extensions.diff
|
||||
Patch454: ppc-fedora-fix-unknown-warning-option-messages.diff
|
||||
Patch455: ppc-fedora-add-ppc64-pthread-stack-size.patch
|
||||
Patch456: ppc-fedora-fix-ppc64-rust_png-build-error.patch
|
||||
Patch457: ppc-chromium-136-clang-config.patch
|
||||
Patch458: ppc-fedora-0001-add-xnn-ppc64el-support.patch
|
||||
# https://src.fedoraproject.org/rpms/chromium/blob/rawhide/f/0002-regenerate-xnn-buildgn.patch
|
||||
@@ -240,6 +243,7 @@ Patch1010: chromium-124-system-libxml.patch
|
||||
Patch1030: chromium-134-revert-rust-adler2.patch
|
||||
# gtk4 is too old
|
||||
Patch1040: gtk-414.patch
|
||||
Patch1041: gtk-414-2.patch
|
||||
# flac is too old
|
||||
Patch1050: chromium-140-old-flac.patch
|
||||
# end conditionally applied patches
|
||||
@@ -278,7 +282,6 @@ BuildRequires: python311-setuptools
|
||||
BuildRequires: python311-six
|
||||
%endif
|
||||
BuildRequires: snappy-devel
|
||||
BuildRequires: update-desktop-files
|
||||
BuildRequires: util-linux
|
||||
BuildRequires: wdiff
|
||||
BuildRequires: perl(Switch)
|
||||
@@ -364,7 +367,7 @@ BuildRequires: pkgconfig(xtst)
|
||||
BuildRequires: cargo%{rust_version}
|
||||
BuildRequires: rust%{rust_version}
|
||||
# END add rust BR
|
||||
BuildRequires: rust-bindgen
|
||||
BuildRequires: rust-bindgen >= 0.71
|
||||
Requires: xdg-utils
|
||||
Requires(pre): permissions
|
||||
Recommends: noto-coloremoji-fonts
|
||||
@@ -501,6 +504,7 @@ WebDriver is an open source tool for automated testing of webapps across many br
|
||||
%endif
|
||||
|
||||
%if %{without gtk4_4_19}
|
||||
%patch -p1 -R -P 1041
|
||||
%patch -p1 -R -P 1040
|
||||
%endif
|
||||
|
||||
@@ -566,7 +570,6 @@ keeplibs=(
|
||||
buildtools/third_party/libc++abi
|
||||
buildtools/third_party/libunwind
|
||||
net/third_party/mozilla_security_manager
|
||||
net/third_party/nss
|
||||
net/third_party/quic
|
||||
net/third_party/uri_template
|
||||
third_party/abseil-cpp
|
||||
@@ -1030,7 +1033,6 @@ myconf_gn+=" blink_symbol_level=0"
|
||||
myconf_gn+=" use_kerberos=true"
|
||||
myconf_gn+=" enable_vr=false"
|
||||
myconf_gn+=" optimize_webui=false"
|
||||
myconf_gn+=" enable_reading_list=false"
|
||||
myconf_gn+=" use_pulseaudio=true link_pulseaudio=true"
|
||||
myconf_gn+=" is_component_build=false"
|
||||
myconf_gn+=" use_sysroot=false"
|
||||
|
||||
@@ -57,8 +57,8 @@ Index: chromium-120.0.6099.18/base/BUILD.gn
|
||||
===================================================================
|
||||
--- chromium-120.0.6099.18.orig/base/BUILD.gn
|
||||
+++ chromium-120.0.6099.18/base/BUILD.gn
|
||||
@@ -3561,6 +3561,10 @@
|
||||
sources += [ "location_unittest.cc" ]
|
||||
@@ -3749,6 +3749,10 @@
|
||||
sources += [ "immediate_crash_unittest.cc" ]
|
||||
}
|
||||
|
||||
+ if (gcc_lto) {
|
||||
|
||||
101
gtk-414-2.patch
Normal file
101
gtk-414-2.patch
Normal file
@@ -0,0 +1,101 @@
|
||||
commit cdc2a57272589f9522689500838e889b88b3f9d4
|
||||
Author: Tom Anderson <thomasanderson@chromium.org>
|
||||
Date: Fri Nov 21 10:43:53 2025 -0800
|
||||
|
||||
[GTK] Directly render header button icons
|
||||
|
||||
The old code used GetTextureFromRenderNode which doesn't work for vector
|
||||
icons. The solution is to call gsk_render_node_draw() to directly render
|
||||
the icon.
|
||||
|
||||
R=thestig
|
||||
|
||||
Fixed: 448684006
|
||||
Change-Id: I3946297974bfdecde9c7b76d86bb9b82c32b9fe8
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7180182
|
||||
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
||||
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1548603}
|
||||
|
||||
diff --git a/ui/gtk/gsk.sigs b/ui/gtk/gsk.sigs
|
||||
index 9dc03167830f4..59f87dce81b1c 100644
|
||||
--- a/ui/gtk/gsk.sigs
|
||||
+++ b/ui/gtk/gsk.sigs
|
||||
@@ -17,4 +17,5 @@ GdkTexture* gsk_texture_node_get_texture(UI_GTK_CONST GskRenderNode* node);
|
||||
float gsk_opacity_node_get_opacity(const GskRenderNode* node);
|
||||
GskRenderNode* gsk_mask_node_get_mask(const GskRenderNode* node);
|
||||
GdkTexture* gsk_texture_scale_node_get_texture(const GskRenderNode* node);
|
||||
-GskRenderNode* gsk_subsurface_node_get_child(const GskRenderNode* node);
|
||||
\ No newline at end of file
|
||||
+GskRenderNode* gsk_subsurface_node_get_child(const GskRenderNode* node);
|
||||
+void gsk_render_node_draw(GskRenderNode* node, cairo_t* cr);
|
||||
diff --git a/ui/gtk/gtk_util.cc b/ui/gtk/gtk_util.cc
|
||||
index 0a2bd7bfb8927..be1a6d8569a1b 100644
|
||||
--- a/ui/gtk/gtk_util.cc
|
||||
+++ b/ui/gtk/gtk_util.cc
|
||||
@@ -290,6 +290,15 @@ CairoSurface::CairoSurface(SkBitmap& bitmap)
|
||||
cairo_format_stride_for_width(CAIRO_FORMAT_ARGB32, bitmap.width()))),
|
||||
cairo_(cairo_create(surface_)) {}
|
||||
|
||||
+CairoSurface::CairoSurface(void* pixels, int width, int height)
|
||||
+ : surface_(cairo_image_surface_create_for_data(
|
||||
+ static_cast<unsigned char*>(pixels),
|
||||
+ CAIRO_FORMAT_ARGB32,
|
||||
+ width,
|
||||
+ height,
|
||||
+ cairo_format_stride_for_width(CAIRO_FORMAT_ARGB32, width))),
|
||||
+ cairo_(cairo_create(surface_)) {}
|
||||
+
|
||||
CairoSurface::CairoSurface(const gfx::Size& size)
|
||||
: surface_(cairo_image_surface_create(CAIRO_FORMAT_ARGB32,
|
||||
size.width(),
|
||||
diff --git a/ui/gtk/gtk_util.h b/ui/gtk/gtk_util.h
|
||||
index 0fbebedc6a61f..f2e9934c0bb66 100644
|
||||
--- a/ui/gtk/gtk_util.h
|
||||
+++ b/ui/gtk/gtk_util.h
|
||||
@@ -61,6 +61,10 @@ class CairoSurface {
|
||||
// into it. |bitmap| must outlive this CairoSurface.
|
||||
explicit CairoSurface(SkBitmap& bitmap);
|
||||
|
||||
+ // Attaches a cairo surface to a pointer to pixel data. `pixels`
|
||||
+ // must outlive this CairoSurface.
|
||||
+ CairoSurface(void* pixels, int width, int height);
|
||||
+
|
||||
// Creates a new cairo surface with the given size. The memory for
|
||||
// this surface is deallocated when this CairoSurface is destroyed.
|
||||
explicit CairoSurface(const gfx::Size& size);
|
||||
diff --git a/ui/gtk/nav_button_provider_gtk.cc b/ui/gtk/nav_button_provider_gtk.cc
|
||||
index 527b9a0743a01..ae46e11dade2b 100644
|
||||
--- a/ui/gtk/nav_button_provider_gtk.cc
|
||||
+++ b/ui/gtk/nav_button_provider_gtk.cc
|
||||
@@ -112,18 +112,22 @@ gfx::Size LoadNavButtonIcon(ui::NavButtonProvider::FrameButtonDisplayType type,
|
||||
auto* snapshot = gtk_snapshot_new();
|
||||
gdk_paintable_snapshot(paintable, snapshot, width, height);
|
||||
auto* node = gtk_snapshot_free_to_node(snapshot);
|
||||
+
|
||||
size_t nbytes = width * height * sizeof(SkColor);
|
||||
- SkColor* pixels = reinterpret_cast<SkColor*>(g_malloc(nbytes));
|
||||
+ void* pixels = g_malloc(nbytes);
|
||||
UNSAFE_TODO(memset(pixels, 0, nbytes));
|
||||
size_t stride = sizeof(SkColor) * width;
|
||||
- if (GdkTexture* texture = GetTextureFromRenderNode(node)) {
|
||||
- gdk_texture_download(texture, reinterpret_cast<guchar*>(pixels), stride);
|
||||
- }
|
||||
+
|
||||
+ CairoSurface surface(pixels, width, height);
|
||||
+ cairo_t* cr = surface.cairo();
|
||||
+ gsk_render_node_draw(node, cr);
|
||||
+
|
||||
SkColor fg = GtkStyleContextGetColor(button_context);
|
||||
- for (int i = 0; i < width * height; ++i) {
|
||||
- UNSAFE_TODO(pixels[i]) =
|
||||
- SkColorSetA(fg, UNSAFE_TODO(SkColorGetA(pixels[i])));
|
||||
- }
|
||||
+ cairo_set_source_rgba(cr, SkColorGetR(fg) / 255.0, SkColorGetG(fg) / 255.0,
|
||||
+ SkColorGetB(fg) / 255.0, SkColorGetA(fg) / 255.0);
|
||||
+ cairo_set_operator(cr, CAIRO_OPERATOR_IN);
|
||||
+ cairo_paint(cr);
|
||||
+
|
||||
icon->texture = TakeGObject(
|
||||
gdk_memory_texture_new(width, height, GDK_MEMORY_B8G8R8A8,
|
||||
g_bytes_new_take(pixels, nbytes), stride));
|
||||
@@ -34,7 +34,7 @@ Index: chromium-134.0.6998.35/sandbox/linux/system_headers/linux_syscalls.h
|
||||
===================================================================
|
||||
--- chromium-134.0.6998.35.orig/sandbox/linux/system_headers/linux_syscalls.h
|
||||
+++ chromium-134.0.6998.35/sandbox/linux/system_headers/linux_syscalls.h
|
||||
@@ -35,5 +35,9 @@
|
||||
@@ -44,4 +44,8 @@
|
||||
#include "sandbox/linux/system_headers/arm64_linux_syscalls.h"
|
||||
#endif
|
||||
|
||||
@@ -43,7 +43,6 @@ Index: chromium-134.0.6998.35/sandbox/linux/system_headers/linux_syscalls.h
|
||||
+#endif
|
||||
+
|
||||
#endif // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_
|
||||
|
||||
Index: chromium-134.0.6998.35/sandbox/linux/system_headers/ppc64_linux_syscalls.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
--- a/third_party/highway/src/hwy/targets.cc
|
||||
+++ b/third_party/highway/src/hwy/targets.cc
|
||||
@@ -35,7 +35,7 @@
|
||||
--- chromium-142.0.7444.52/third_party/highway/src/hwy/targets.cc 2025/10/24 14:08:16 1.1
|
||||
+++ chromium-142.0.7444.52/third_party/highway/src/hwy/targets.cc 2025/10/24 14:09:30
|
||||
@@ -26,7 +26,7 @@
|
||||
#if HWY_ARCH_X86
|
||||
#include <xmmintrin.h>
|
||||
|
||||
-#elif (HWY_ARCH_ARM || HWY_ARCH_PPC || HWY_ARCH_S390X || HWY_ARCH_RISCV || \
|
||||
+#elif (HWY_ARCH_ARM || HWY_ARCH_S390X || HWY_ARCH_RISCV || \
|
||||
HWY_ARCH_LOONGARCH) && \
|
||||
HWY_OS_LINUX
|
||||
// sys/auxv.h does not always include asm/hwcap.h, or define HWCAP*, hence we
|
||||
// still include this directly. See #1199.
|
||||
-#ifndef TOOLCHAIN_MISS_ASM_HWCAP_H
|
||||
+#if !defined(TOOLCHAIN_MISS_ASM_HWCAP_H) && !defined(HWY_ARCH_PPC)
|
||||
#include <asm/hwcap.h>
|
||||
#endif
|
||||
#if HWY_HAVE_AUXV
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -2,11 +2,11 @@ Index: chromium-128.0.6613.113/chrome/browser/extensions/api/runtime/chrome_runt
|
||||
===================================================================
|
||||
--- chromium-128.0.6613.113.orig/chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc
|
||||
+++ chromium-128.0.6613.113/chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc
|
||||
@@ -375,6 +375,8 @@
|
||||
@@ -383,6 +383,8 @@
|
||||
info->arch = extensions::api::runtime::PlatformArch::kMips64;
|
||||
} else if (UNSAFE_TODO(strcmp(arch, "riscv64")) == 0) {
|
||||
} else if (arch == "riscv64") {
|
||||
info->arch = extensions::api::runtime::PlatformArch::kRiscv64;
|
||||
+ } else if (UNSAFE_TODO(strcmp(arch, "ppc64")) == 0) {
|
||||
+ } else if (arch == "ppc64") {
|
||||
+ info->arch = extensions::api::runtime::PlatformArch::kPpc64;
|
||||
} else {
|
||||
NOTREACHED();
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
Index: chromium-128.0.6613.113/build/config/BUILDCONFIG.gn
|
||||
===================================================================
|
||||
--- chromium-128.0.6613.113.orig/build/config/BUILDCONFIG.gn
|
||||
+++ chromium-128.0.6613.113/build/config/BUILDCONFIG.gn
|
||||
@@ -138,7 +138,6 @@ declare_args() {
|
||||
--- chromium-143.0.7499.17/build/config/BUILDCONFIG.gn 2025/11/10 11:36:45 1.1
|
||||
+++ chromium-143.0.7499.17/build/config/BUILDCONFIG.gn 2025/11/10 11:37:11
|
||||
@@ -138,7 +138,6 @@
|
||||
# Set to true when compiling with the Clang compiler.
|
||||
is_clang = current_os != "linux" ||
|
||||
(current_cpu != "s390x" && current_cpu != "s390" &&
|
||||
- current_cpu != "ppc64" && current_cpu != "ppc" &&
|
||||
current_cpu != "mips" && current_cpu != "mips64" &&
|
||||
current_cpu != "riscv64")
|
||||
current_cpu != "mips" && current_cpu != "mips64")
|
||||
|
||||
# Allows the path to a custom target toolchain to be injected as a single
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
diff -up chromium-135.0.7049.52/third_party/skia/experimental/rust_png/ffi/FFI.h.than chromium-135.0.7049.52/third_party/skia/experimental/rust_png/ffi/FFI.h
|
||||
--- chromium-135.0.7049.52/third_party/skia/experimental/rust_png/ffi/FFI.h.than 2025-04-03 12:00:57.623069853 +0200
|
||||
+++ chromium-135.0.7049.52/third_party/skia/experimental/rust_png/ffi/FFI.h 2025-04-03 12:02:42.234420632 +0200
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
+#include <memory>
|
||||
|
||||
// TODO(https://crbug.com/356698922): Use a real `#include` if possible.
|
||||
namespace rust {
|
||||
@@ -1,7 +1,7 @@
|
||||
Index: chromium-114.0.5735.90/build/linux/unbundle/libdrm.gn
|
||||
Index: chromium-142.0.7444.3/build/linux/unbundle/libdrm.gn
|
||||
===================================================================
|
||||
--- chromium-114.0.5735.90.orig/build/linux/unbundle/libdrm.gn
|
||||
+++ chromium-114.0.5735.90/build/linux/unbundle/libdrm.gn
|
||||
--- chromium-142.0.7444.3.orig/build/linux/unbundle/libdrm.gn
|
||||
+++ chromium-142.0.7444.3/build/linux/unbundle/libdrm.gn
|
||||
@@ -11,7 +11,10 @@ pkg_config("system_libdrm") {
|
||||
|
||||
shim_headers("libdrm_shim") {
|
||||
@@ -14,23 +14,10 @@ Index: chromium-114.0.5735.90/build/linux/unbundle/libdrm.gn
|
||||
}
|
||||
|
||||
source_set("libdrm") {
|
||||
Index: chromium-114.0.5735.90/ui/ozone/platform/drm/gpu/hardware_display_controller.cc
|
||||
Index: chromium-142.0.7444.3/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
===================================================================
|
||||
--- chromium-114.0.5735.90.orig/ui/ozone/platform/drm/gpu/hardware_display_controller.cc
|
||||
+++ chromium-114.0.5735.90/ui/ozone/platform/drm/gpu/hardware_display_controller.cc
|
||||
@@ -18,7 +18,7 @@
|
||||
#include "base/logging.h"
|
||||
#include "base/metrics/histogram_macros.h"
|
||||
#include "base/trace_event/typed_macros.h"
|
||||
-#include "third_party/libdrm/src/include/drm/drm_fourcc.h"
|
||||
+#include <drm_fourcc.h>
|
||||
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
|
||||
#include "third_party/skia/include/core/SkCanvas.h"
|
||||
#include "third_party/skia/include/core/SkImage.h"
|
||||
Index: chromium-114.0.5735.90/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
===================================================================
|
||||
--- chromium-114.0.5735.90.orig/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
+++ chromium-114.0.5735.90/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
--- chromium-142.0.7444.3.orig/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
+++ chromium-142.0.7444.3/media/gpu/chromeos/video_decoder_pipeline_unittest.cc
|
||||
@@ -26,7 +26,7 @@
|
||||
#include "media/gpu/chromeos/frame_resource_converter.h"
|
||||
#include "testing/gmock/include/gmock/gmock.h"
|
||||
@@ -40,3 +27,16 @@ Index: chromium-114.0.5735.90/media/gpu/chromeos/video_decoder_pipeline_unittest
|
||||
|
||||
#if BUILDFLAG(IS_CHROMEOS)
|
||||
// gn check does not account for BUILDFLAG(), so including this header will
|
||||
Index: chromium-142.0.7444.3/ui/ozone/platform/drm/gpu/hardware_display_controller.cc
|
||||
===================================================================
|
||||
--- chromium-142.0.7444.3.orig/ui/ozone/platform/drm/gpu/hardware_display_controller.cc
|
||||
+++ chromium-142.0.7444.3/ui/ozone/platform/drm/gpu/hardware_display_controller.cc
|
||||
@@ -19,7 +19,7 @@
|
||||
#include "base/metrics/histogram_macros.h"
|
||||
#include "base/trace_event/typed_macros.h"
|
||||
#include "components/viz/common/resources/shared_image_format_utils.h"
|
||||
-#include "third_party/libdrm/src/include/drm/drm_fourcc.h"
|
||||
+#include <drm_fourcc.h>
|
||||
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
|
||||
#include "third_party/skia/include/core/SkCanvas.h"
|
||||
#include "third_party/skia/include/core/SkImage.h"
|
||||
|
||||
Reference in New Issue
Block a user