Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package chromium for openSUSE:Factory checked in at 2022-09-09 18:24:32 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/chromium (Old) and /work/SRC/openSUSE:Factory/.chromium.new.2083 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chromium" Fri Sep 9 18:24:32 2022 rev:351 rq:1001897 version:105.0.5195.102 Changes: -------- --- /work/SRC/openSUSE:Factory/chromium/chromium.changes 2022-09-01 22:12:26.420452416 +0200 +++ /work/SRC/openSUSE:Factory/.chromium.new.2083/chromium.changes 2022-09-09 18:25:36.264628995 +0200 @@ -1,0 +2,41 @@ +Thu Sep 8 10:46:42 UTC 2022 - Callum Farmer <gm...@opensuse.org> + +- Chromium 105.0.5195.102 (boo#1203102): + * CVE-2022-3075: Insufficient data validation in Mojo +- Chromium 105.0.5195.52 (boo#1202964): + * CVE-2022-3038: Use after free in Network Service + * CVE-2022-3039: Use after free in WebSQL + * CVE-2022-3040: Use after free in Layout + * CVE-2022-3041: Use after free in WebSQL + * CVE-2022-3042: Use after free in PhoneHub + * CVE-2022-3043: Heap buffer overflow in Screen Capture + * CVE-2022-3044: Inappropriate implementation in Site Isolation + * CVE-2022-3045: Insufficient validation of untrusted input in V8 + * CVE-2022-3046: Use after free in Browser Tag + * CVE-2022-3071: Use after free in Tab Strip + * CVE-2022-3047: Insufficient policy enforcement in Extensions API + * CVE-2022-3048: Inappropriate implementation in Chrome OS lockscreen + * CVE-2022-3049: Use after free in SplitScreen + * CVE-2022-3050: Heap buffer overflow in WebUI + * CVE-2022-3051: Heap buffer overflow in Exosphere + * CVE-2022-3052: Heap buffer overflow in Window Manager + * CVE-2022-3053: Inappropriate implementation in Pointer Lock + * CVE-2022-3054: Insufficient policy enforcement in DevTools + * CVE-2022-3055: Use after free in Passwords + * CVE-2022-3056: Insufficient policy enforcement in Content Security Policy + * CVE-2022-3057: Inappropriate implementation in iframe Sandbox + * CVE-2022-3058: Use after free in Sign-In Flow +- Added patches: + * chromium-105-AdjustMaskLayerGeometry-ceilf.patch + * chromium-105-Bitmap-include.patch + * chromium-105-browser_finder-include.patch + * chromium-105-raw_ptr-noexcept.patch + * chromium-105-Trap-raw_ptr.patch + * chromium-105-wayland-1.20.patch + * chromium-105-compiler.patch +- Removed patches: + * chromium-104-compiler.patch + * chromium-104-ContentRendererClient-type.patch + * chromium-78-protobuf-RepeatedPtrField-export.patch + +------------------------------------------------------------------- Old: ---- chromium-104-ContentRendererClient-type.patch chromium-104-compiler.patch chromium-104.0.5112.101.tar.xz chromium-78-protobuf-RepeatedPtrField-export.patch New: ---- chromium-105-AdjustMaskLayerGeometry-ceilf.patch chromium-105-Bitmap-include.patch chromium-105-Trap-raw_ptr.patch chromium-105-browser_finder-include.patch chromium-105-compiler.patch chromium-105-raw_ptr-noexcept.patch chromium-105-wayland-1.20.patch chromium-105.0.5195.102.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ chromium.spec ++++++ --- /var/tmp/diff_new_pack.tRIKBA/_old 2022-09-09 18:25:46.048656527 +0200 +++ /var/tmp/diff_new_pack.tRIKBA/_new 2022-09-09 18:25:46.052656539 +0200 @@ -67,7 +67,7 @@ %endif Name: chromium -Version: 104.0.5112.101 +Version: 105.0.5195.102 Release: 0 Summary: Google's open source browser project License: BSD-3-Clause AND LGPL-2.1-or-later @@ -101,8 +101,7 @@ Patch10: chromium-disable-parallel-gold.patch Patch11: chromium-lp151-old-drm.patch # gentoo/fedora/arch patchset -Patch12: chromium-78-protobuf-RepeatedPtrField-export.patch -Patch15: chromium-104-compiler.patch +Patch15: chromium-105-compiler.patch Patch17: chromium-86-ImageMemoryBarrierData-init.patch Patch21: chromium-gcc11.patch Patch40: chromium-91-java-only-allowed-in-android-builds.patch @@ -117,8 +116,13 @@ Patch90: chromium-100-InMilliseconds-constexpr.patch Patch98: chromium-102-regex_pattern-array.patch Patch103: chromium-103-VirtualCursor-std-layout.patch -Patch104: chromium-104-ContentRendererClient-type.patch Patch105: chromium-104-tflite-system-zlib.patch +Patch106: chromium-105-AdjustMaskLayerGeometry-ceilf.patch +Patch107: chromium-105-Bitmap-include.patch +Patch108: chromium-105-browser_finder-include.patch +Patch109: chromium-105-raw_ptr-noexcept.patch +Patch110: chromium-105-Trap-raw_ptr.patch +Patch111: chromium-105-wayland-1.20.patch Patch201: chromium-86-fix-vaapi-on-intel.patch # PATCH-FIX-SUSE: allow prop codecs to be set with chromium branding Patch202: chromium-prop-codecs.patch @@ -418,6 +422,7 @@ third_party/crashpad/crashpad/third_party/zlib third_party/crc32c third_party/cros_system_api + third_party/content_analysis_sdk third_party/dav1d third_party/dawn third_party/dawn/third_party @@ -516,10 +521,10 @@ third_party/pdfium/third_party/bigint third_party/pdfium/third_party/freetype third_party/pdfium/third_party/lcms - third_party/pdfium/third_party/libopenjpeg20 third_party/pdfium/third_party/libpng16 third_party/pdfium/third_party/libtiff third_party/pdfium/third_party/skia_shared + third_party/pdfium/third_party/libopenjpeg third_party/perfetto third_party/perfetto/protos/third_party/chromium third_party/pffft ++++++ chromium-105-AdjustMaskLayerGeometry-ceilf.patch ++++++ >From 385068e1eb1cde9629d18ceee1fd13255c70c806 Mon Sep 17 00:00:00 2001 From: Stephan Hartmann <sth...@googlemail.com> Date: Fri, 22 Jul 2022 18:29:24 +0000 Subject: [PATCH] libstdc++: use math.h in blink::AdjustMaskLayerGeometry libstdc++ does not implement std::ceilf. Use ceilf from math.h instead. Bug: 957519 Change-Id: I03b5e0a1eb73fdeae34d5f3d2f2e9c8871c52543 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3782841 Commit-Queue: Stephan Hartmann <sth...@googlemail.com> Reviewed-by: Juanmi Huertas <juanm...@chromium.org> Cr-Commit-Position: refs/heads/main@{#1027342} --- diff --git a/third_party/blink/renderer/platform/graphics/compositing/adjust_mask_layer_geometry.cc b/third_party/blink/renderer/platform/graphics/compositing/adjust_mask_layer_geometry.cc index 4abe1d9..b5b43da 100644 --- a/third_party/blink/renderer/platform/graphics/compositing/adjust_mask_layer_geometry.cc +++ b/third_party/blink/renderer/platform/graphics/compositing/adjust_mask_layer_geometry.cc @@ -4,8 +4,9 @@ #include "third_party/blink/renderer/platform/graphics/compositing/adjust_mask_layer_geometry.h" +#include <math.h> #include <algorithm> -#include <cmath> + #include "third_party/blink/renderer/platform/graphics/paint/geometry_mapper.h" #include "third_party/blink/renderer/platform/graphics/paint/transform_paint_property_node.h" #include "ui/gfx/geometry/size.h" @@ -29,8 +30,7 @@ // Map a screen pixel into the layer. GeometryMapper::SourceToDestinationRect(TransformPaintPropertyNode::Root(), transform, pixel_rect); - int outset = - std::ceilf(std::max(pixel_rect.width(), pixel_rect.height()) * 2); + int outset = ceilf(std::max(pixel_rect.width(), pixel_rect.height()) * 2); // Don't expand too far in extreme cases. constexpr int kMaxOutset = 1000; outset = std::min(kMaxOutset, outset); ++++++ chromium-105-Bitmap-include.patch ++++++ >From 8959d9d1c6e4ed083c278ab9e8def20a409052b9 Mon Sep 17 00:00:00 2001 From: Stephan Hartmann <sth...@googlemail.com> Date: Fri, 22 Jul 2022 16:51:28 +0000 Subject: [PATCH] IWYU: add memory for std::unique_ptr in disk_cache::Bitmap Bug: 957519 Change-Id: I123198345e5f9062329b7eabe980f312525c268b Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3779530 Reviewed-by: Maks Orlovich <morlov...@chromium.org> Commit-Queue: Stephan Hartmann <sth...@googlemail.com> Cr-Commit-Position: refs/heads/main@{#1027289} --- diff --git a/net/disk_cache/blockfile/bitmap.h b/net/disk_cache/blockfile/bitmap.h index 07806cf..9ffa98b9 100644 --- a/net/disk_cache/blockfile/bitmap.h +++ b/net/disk_cache/blockfile/bitmap.h @@ -8,6 +8,8 @@ #include <stdint.h> #include <string.h> +#include <memory> + #include "base/memory/raw_ptr.h" #include "net/base/net_export.h" ++++++ chromium-105-Trap-raw_ptr.patch ++++++ >From 632aad0141fe0008fa9babba4f1f514222fa2cda Mon Sep 17 00:00:00 2001 From: Matthew Denton <mpden...@chromium.org> Date: Mon, 01 Aug 2022 21:45:28 +0000 Subject: [PATCH] [Linux sandbox] cleanup TrapRegistry's "atomics" TrapRegistry uses some hacky asm statements as compiler memory barriers to prevent a signal handler from accessing a deleted array (in the case that the store of the pointer to the new array is reordered after the deletion of the old array and the signal handler grabs a pointer to the old array after it's deleted). We have std::atomic_signal_fence for this now, so this uses it. This also changes the |trap_array_| pointer back to a raw pointer from a raw_ptr. Usage of raw_ptr might be awkward as it is also accessed in a signal handler, and in fact |trap_array_| is an owning pointer anyway so raw_ptr is unnecessary. This came up in https://crrev.com/c/3789266 in which the use of raw_ptr with the hacky compiler barriers was not supported by GCC. SMALL ADDITION: This also removes raw_ptr from the arch_sigsys struct; it was a raw pointer to a code instruction and likely would not have worked. It is also never dereferenced (only its value is used). NOTE 1: In technicality, all non-local variables accessed by the signal handler must be either lock-free std::atomics or volatile sig_atomic_t. None of Chrome's code does this and in fact, glibc just typedefs sig_atomic_t to int. The std::atomic_signal_fence is enough on any architecture. NOTE 2: This race condition is unlikely to ever happen even without compiler barriers. The only time we might be modifying the |trap_array_| and also accessing it from a signal handler, we must have already applied a seccomp sandbox that uses traps, and now be applying another one that uses traps. And to replace the deleted object, the second sandbox must be getting applied in a multithreaded environment, otherwise there would be no allocations after the free. Bug: 819294 Change-Id: I9f1cd417446dd863805a303e9b111bc862cb9ae2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3788911 Commit-Queue: Matthew Denton <mpden...@chromium.org> Reviewed-by: Tom Sepez <tse...@chromium.org> Cr-Commit-Position: refs/heads/main@{#1030277} --- diff --git a/sandbox/linux/seccomp-bpf/trap.cc b/sandbox/linux/seccomp-bpf/trap.cc index cb71a9b..b0c0257 100644 --- a/sandbox/linux/seccomp-bpf/trap.cc +++ b/sandbox/linux/seccomp-bpf/trap.cc @@ -12,12 +12,13 @@ #include <sys/syscall.h> #include <algorithm> +#include <atomic> #include <limits> #include <tuple> #include "base/compiler_specific.h" #include "base/logging.h" -#include "base/memory/raw_ptr.h" +#include "base/memory/raw_ptr_exclusion.h" #include "build/build_config.h" #include "sandbox/linux/bpf_dsl/seccomp_macros.h" #include "sandbox/linux/seccomp-bpf/die.h" @@ -29,7 +30,9 @@ namespace { struct arch_sigsys { - raw_ptr<void> ip; + // This is not raw_ptr because it is a pointer to a code address given to us + // by the kernel. + RAW_PTR_EXCLUSION void* ip; int nr; unsigned int arch; }; @@ -77,11 +80,7 @@ namespace sandbox { -Trap::Trap() - : trap_array_(nullptr), - trap_array_size_(0), - trap_array_capacity_(0), - has_unsafe_traps_(false) { +Trap::Trap() { // Set new SIGSYS handler struct sigaction sa = {}; // In some toolchain, sa_sigaction is not declared in struct sigaction. @@ -239,7 +238,7 @@ struct arch_seccomp_data data = { static_cast<int>(SECCOMP_SYSCALL(ctx)), SECCOMP_ARCH, - reinterpret_cast<uint64_t>(sigsys.ip.get()), + reinterpret_cast<uint64_t>(sigsys.ip), {static_cast<uint64_t>(SECCOMP_PARM1(ctx)), static_cast<uint64_t>(SECCOMP_PARM2(ctx)), static_cast<uint64_t>(SECCOMP_PARM3(ctx)), @@ -333,24 +332,11 @@ TrapKey* new_trap_array = new TrapKey[trap_array_capacity_]; std::copy_n(old_trap_array, trap_array_size_, new_trap_array); - // Language specs are unclear on whether the compiler is allowed to move - // the "delete[]" above our preceding assignments and/or memory moves, - // iff the compiler believes that "delete[]" doesn't have any other - // global side-effects. - // We insert optimization barriers to prevent this from happening. - // The first barrier is probably not needed, but better be explicit in - // what we want to tell the compiler. - // The clang developer mailing list couldn't answer whether this is a - // legitimate worry; but they at least thought that the barrier is - // sufficient to prevent the (so far hypothetical) problem of re-ordering - // of instructions by the compiler. - // - // TODO(mdempsky): Try to clean this up using base/atomicops or C++11 - // atomics; see crbug.com/414363. - asm volatile("" : "=r"(new_trap_array) : "0"(new_trap_array) : "memory"); trap_array_ = new_trap_array; - asm volatile("" : "=r"(trap_array_) : "0"(trap_array_) : "memory"); - + // Prevent the compiler from moving delete[] before the store of the + // |new_trap_array|, otherwise a concurrent SIGSYS may see a |trap_array_| + // that still points to |old_trap_array| after it has been deleted. + std::atomic_signal_fence(std::memory_order_release); delete[] old_trap_array; } diff --git a/sandbox/linux/seccomp-bpf/trap.h b/sandbox/linux/seccomp-bpf/trap.h index cc17d26..37d2029 100644 --- a/sandbox/linux/seccomp-bpf/trap.h +++ b/sandbox/linux/seccomp-bpf/trap.h @@ -10,7 +10,7 @@ #include <map> -#include "base/memory/raw_ptr.h" +#include "base/memory/raw_ptr_exclusion.h" #include "sandbox/linux/bpf_dsl/trap_registry.h" #include "sandbox/linux/system_headers/linux_signal.h" #include "sandbox/sandbox_export.h" @@ -75,11 +75,15 @@ // events. static Trap* global_trap_; - TrapIds trap_ids_; // Maps from TrapKeys to numeric ids - raw_ptr<TrapKey> trap_array_; // Array of TrapKeys indexed by ids - size_t trap_array_size_; // Currently used size of array - size_t trap_array_capacity_; // Currently allocated capacity of array - bool has_unsafe_traps_; // Whether unsafe traps have been enabled + TrapIds trap_ids_; // Maps from TrapKeys to numeric ids + // Array of TrapKeys indexed by ids. + // + // This is not a raw_ptr as it is an owning pointer anyway, and is meant to be + // used between normal code and signal handlers. + RAW_PTR_EXCLUSION TrapKey* trap_array_ = nullptr; + size_t trap_array_size_ = 0; // Currently used size of array + size_t trap_array_capacity_ = 0; // Currently allocated capacity of array + bool has_unsafe_traps_ = false; // Whether unsafe traps have been enabled }; } // namespace sandbox ++++++ chromium-105-browser_finder-include.patch ++++++ >From 41dca8bd0c5e8ac5197d7477c6f01556fb88fb43 Mon Sep 17 00:00:00 2001 From: Stephan Hartmann <sth...@googlemail.com> Date: Sun, 14 Aug 2022 08:41:11 +0000 Subject: [PATCH] IWYU: add vector for std::vector in browser_finder.h --- chrome/browser/ui/browser_finder.h | 1 + 1 file changed, 1 insertion(+) diff --git a/chrome/browser/ui/browser_finder.h b/chrome/browser/ui/browser_finder.h index f885be0..ad7a184 100644 --- a/chrome/browser/ui/browser_finder.h +++ b/chrome/browser/ui/browser_finder.h @@ -6,6 +6,7 @@ #define CHROME_BROWSER_UI_BROWSER_FINDER_H_ #include <stddef.h> +#include <vector> #include "ui/display/types/display_constants.h" #include "ui/gfx/native_widget_types.h" -- 2.35.1 ++++++ chromium-104-compiler.patch -> chromium-105-compiler.patch ++++++ --- /work/SRC/openSUSE:Factory/chromium/chromium-104-compiler.patch 2022-08-10 17:14:46.817939819 +0200 +++ /work/SRC/openSUSE:Factory/.chromium.new.2083/chromium-105-compiler.patch 2022-09-09 18:25:08.980551757 +0200 @@ -1,17 +1,17 @@ From 307a0f63dd9b118f4b8470ed3d7567e81fdb7a6d Mon Sep 17 00:00:00 2001 From: Mike Gilbert <flop...@gentoo.org> -Date: Fri, 27 May 2022 11:06:49 +0000 +Date: Sat, 13 Aug 2022 13:48:07 +0000 Subject: [PATCH] Disable various compiler configs --- - build/config/compiler/BUILD.gn | 114 +++++---------------------------- - 1 file changed, 17 insertions(+), 97 deletions(-) + build/config/compiler/BUILD.gn | 106 ++++++--------------------------- + 1 file changed, 17 insertions(+), 89 deletions(-) diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index c90821e..dcb8b87 100644 +index b6aaae9..e0f109d 100644 --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -286,9 +286,7 @@ config("compiler") { +@@ -283,9 +283,7 @@ config("compiler") { configs += [ # See the definitions below. @@ -21,7 +21,7 @@ ":compiler_codegen", ":compiler_deterministic", ] -@@ -522,31 +520,6 @@ config("compiler") { +@@ -536,31 +534,6 @@ config("compiler") { ldflags += [ "-Wl,-z,keep-text-section-prefix" ] } @@ -53,7 +53,7 @@ # Rust compiler setup (for either clang or rustc). if (enable_rust) { defines += [ "RUST_ENABLED" ] -@@ -1231,45 +1204,6 @@ config("compiler_deterministic") { +@@ -1236,45 +1209,6 @@ config("compiler_deterministic") { } } @@ -99,23 +99,7 @@ # 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 goma cache entries. -@@ -1534,15 +1468,6 @@ config("default_warnings") { - cflags += [ "-Wno-unqualified-std-cast-call" ] - } - -- if (!is_nacl && !(is_chromeos || -- default_toolchain == "//build/toolchain/cros:target")) { -- # TODO(https://crbug.com/1322823): Remove flags once potential miscompile is investigated. -- cflags += [ -- "-Xclang", -- "-no-opaque-pointers", -- ] -- } -- - if (is_fuchsia) { - # TODO(https://bugs.chromium.org/p/fuchsia/issues/detail?id=77383) - cflags += [ "-Wno-deprecated-copy" ] -@@ -1611,7 +1536,7 @@ config("chromium_code") { +@@ -1618,7 +1552,7 @@ config("chromium_code") { defines = [ "_HAS_NODISCARD" ] } } else { @@ -124,7 +108,7 @@ if (treat_warnings_as_errors) { cflags += [ "-Werror" ] -@@ -1620,10 +1545,6 @@ config("chromium_code") { +@@ -1627,10 +1561,6 @@ config("chromium_code") { # well. ldflags = [ "-Werror" ] } @@ -135,13 +119,14 @@ # In Chromium code, we define __STDC_foo_MACROS in order to get the # C99 macros on Mac and Linux. -@@ -1632,15 +1553,6 @@ config("chromium_code") { +@@ -1639,16 +1569,6 @@ config("chromium_code") { "__STDC_FORMAT_MACROS", ] - if (!is_debug && !using_sanitizer && current_cpu != "s390x" && - current_cpu != "s390" && current_cpu != "ppc64" && -- current_cpu != "mips" && current_cpu != "mips64") { +- current_cpu != "mips" && current_cpu != "mips64" && +- current_cpu != "riscv64") { - # Non-chromium code is not guaranteed to compile cleanly with - # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are - # disabled, so only do that for Release build. @@ -151,7 +136,7 @@ if (is_mac) { cflags_objc = [ "-Wobjc-missing-property-synthesis" ] cflags_objcc = [ "-Wobjc-missing-property-synthesis" ] -@@ -2031,7 +1943,8 @@ config("default_stack_frames") { +@@ -2039,7 +1959,8 @@ config("default_stack_frames") { } # Default "optimization on" config. @@ -161,7 +146,7 @@ if (is_win) { if (chrome_pgo_phase != 2) { # Favor size over speed, /O1 must be before the common flags. -@@ -2069,7 +1982,8 @@ config("optimize") { +@@ -2077,7 +1998,8 @@ config("optimize") { } # Turn off optimizations. @@ -171,7 +156,7 @@ if (is_win) { cflags = [ "/Od", # Disable optimization. -@@ -2109,7 +2023,8 @@ config("no_optimize") { +@@ -2117,7 +2039,8 @@ config("no_optimize") { # Turns up the optimization level. On Windows, this implies whole program # optimization and link-time code generation which is very expensive and should # be used sparingly. @@ -181,7 +166,7 @@ if (is_nacl && is_nacl_irt) { # The NaCl IRT is a special case and always wants its own config. # Various components do: -@@ -2142,7 +2057,8 @@ config("optimize_max") { +@@ -2150,7 +2073,8 @@ config("optimize_max") { # # TODO(crbug.com/621335) - rework how all of these configs are related # so that we don't need this disclaimer. @@ -191,7 +176,7 @@ if (is_nacl && is_nacl_irt) { # The NaCl IRT is a special case and always wants its own config. # Various components do: -@@ -2168,7 +2084,8 @@ config("optimize_speed") { +@@ -2176,7 +2100,8 @@ config("optimize_speed") { } } @@ -201,7 +186,7 @@ cflags = [ "-O1" ] + common_optimize_on_cflags rustflags = [ "-Copt-level=1" ] ldflags = common_optimize_on_ldflags -@@ -2287,7 +2204,8 @@ config("win_pdbaltpath") { +@@ -2295,7 +2220,8 @@ config("win_pdbaltpath") { } # Full symbols. @@ -211,7 +196,7 @@ if (is_win) { if (is_clang) { cflags = [ "/Z7" ] # Debug information in the .obj files. -@@ -2413,7 +2331,8 @@ config("symbols") { +@@ -2420,7 +2346,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. @@ -221,7 +206,7 @@ if (is_win) { # Functions, files, and line tables only. cflags = [] -@@ -2486,7 +2405,8 @@ config("minimal_symbols") { +@@ -2492,7 +2419,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. ++++++ chromium-105-raw_ptr-noexcept.patch ++++++ >From 72b19a6a725809f872a7e7525c9a83bcbda85ec7 Mon Sep 17 00:00:00 2001 From: Stephan Hartmann <sth...@googlemail.com> Date: Mon, 25 Jul 2022 09:19:19 +0000 Subject: [PATCH] GCC: make raw_ptr move assignment operator noexcept Required in content::LevelDBScopesOptions, because move assignment operator is noexcept too. Bug: 3762913 Change-Id: Ic55ade0e15457eb7349fe24203307972d9030a8e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3782669 Reviewed-by: Keishi Hattori <kei...@chromium.org> Commit-Queue: Stephan Hartmann <sth...@googlemail.com> Reviewed-by: Bartek Nowierski <bart...@chromium.org> Cr-Commit-Position: refs/heads/main@{#1027669} --- diff --git a/base/memory/raw_ptr.h b/base/memory/raw_ptr.h index 5d8c1cfd..9a62f03 100644 --- a/base/memory/raw_ptr.h +++ b/base/memory/raw_ptr.h @@ -796,7 +796,7 @@ return *this; } - ALWAYS_INLINE raw_ptr& operator=(raw_ptr&& p) { + ALWAYS_INLINE raw_ptr& operator=(raw_ptr&& p) noexcept { if (LIKELY(this != &p)) { Impl::ReleaseWrappedPtr(wrapped_ptr_); wrapped_ptr_ = p.wrapped_ptr_; ++++++ chromium-105-wayland-1.20.patch ++++++ --- a/third_party/wayland/src/src/wayland-client-core.h +++ b/third_party/wayland/src/src/wayland-client-core.h @@ -119,9 +119,27 @@ struct wl_display; */ struct wl_event_queue; +/** Destroy proxy after marshalling + * @ingroup wl_proxy + */ +#define WL_MARSHAL_FLAG_DESTROY (1 << 0) + void wl_event_queue_destroy(struct wl_event_queue *queue); +struct wl_proxy * +wl_proxy_marshal_flags(struct wl_proxy *proxy, uint32_t opcode, + const struct wl_interface *interface, + uint32_t version, + uint32_t flags, ...); + +struct wl_proxy * +wl_proxy_marshal_array_flags(struct wl_proxy *proxy, uint32_t opcode, + const struct wl_interface *interface, + uint32_t version, + uint32_t flags, + union wl_argument *args); + void wl_proxy_marshal(struct wl_proxy *p, uint32_t opcode, ...); ++++++ chromium-104.0.5112.101.tar.xz -> chromium-105.0.5195.102.tar.xz ++++++ /work/SRC/openSUSE:Factory/chromium/chromium-104.0.5112.101.tar.xz /work/SRC/openSUSE:Factory/.chromium.new.2083/chromium-105.0.5195.102.tar.xz differ: char 15, line 1 ++++++ chromium-system-libusb.patch ++++++ --- /var/tmp/diff_new_pack.tRIKBA/_old 2022-09-09 18:25:46.356657395 +0200 +++ /var/tmp/diff_new_pack.tRIKBA/_new 2022-09-09 18:25:46.360657405 +0200 @@ -32,8 +32,8 @@ --- chromium-70.0.3538.54.orig/build/linux/unbundle/replace_gn_files.py +++ chromium-70.0.3538.54/build/linux/unbundle/replace_gn_files.py @@ -27,6 +27,7 @@ REPLACEMENTS = { - 'libevent': 'base/third_party/libevent/BUILD.gn', 'libjpeg': 'third_party/libjpeg.gni', + 'libjxl' : 'third_party/libjxl/BUILD.gn', 'libpng': 'third_party/libpng/BUILD.gn', + 'libusb': 'third_party/libusb/BUILD.gn', 'libvpx': 'third_party/libvpx/BUILD.gn',