* High CVE-2024-5830: Type Confusion in V8 * High CVE-2024-5831: Use after free in Dawn * High CVE-2024-5832: Use after free in Dawn * High CVE-2024-5833: Type Confusion in V8 * High CVE-2024-5834: Inappropriate implementation in Dawn * High CVE-2024-5835: Heap buffer overflow in Tab Groups * High CVE-2024-5836: Inappropriate Implementation in DevTools * High CVE-2024-5837: Type Confusion in V8 * High CVE-2024-5838: Type Confusion in V8 * Medium CVE-2024-5839: Inappropriate Implementation in Memory Allocator * Medium CVE-2024-5840: Policy Bypass in CORS * Medium CVE-2024-5841: Use after free in V8 * Medium CVE-2024-5842: Use after free in Browser UI * Medium CVE-2024-5843: Inappropriate implementation in Downloads * Medium CVE-2024-5844: Heap buffer overflow in Tab Strip * Medium CVE-2024-5845: Use after free in Audio * Medium CVE-2024-5846: Use after free in PDFium * Medium CVE-2024-5847: Use after free in PDFium - refreshed patches - dropped a workaround for a bug in new llvm on f40/rawhide (ppc64le) - tweaked system build flagsepel9
parent
a807056bef
commit
53321af48c
@ -1,47 +0,0 @@
|
||||
diff -up chromium-108.0.5359.124/third_party/wayland/src/src/wayland-shm.c.me chromium-108.0.5359.124/third_party/wayland/src/src/wayland-shm.c
|
||||
--- chromium-108.0.5359.124/third_party/wayland/src/src/wayland-shm.c.me 2022-12-24 11:08:03.212333476 +0100
|
||||
+++ chromium-108.0.5359.124/third_party/wayland/src/src/wayland-shm.c 2022-12-24 11:08:18.316606155 +0100
|
||||
@@ -44,7 +44,7 @@
|
||||
#include <signal.h>
|
||||
#include <pthread.h>
|
||||
#include <errno.h>
|
||||
-#include <fcntl.h>
|
||||
+#include <linux/fcntl.h>
|
||||
|
||||
#include "wayland-os.h"
|
||||
#include "wayland-util.h"
|
||||
diff -up chromium-102.0.5005.115/v8/src/base/platform/platform-posix.cc.el7-memfd-include chromium-102.0.5005.115/v8/src/base/platform/platform-posix.cc
|
||||
--- chromium-102.0.5005.115/v8/src/base/platform/platform-posix.cc.el7-memfd-include 2022-06-15 10:52:49.553817031 -0400
|
||||
+++ chromium-102.0.5005.115/v8/src/base/platform/platform-posix.cc 2022-06-15 10:56:15.775173013 -0400
|
||||
@@ -56,6 +56,7 @@
|
||||
|
||||
#if V8_OS_LINUX
|
||||
#include <sys/prctl.h> // for prctl
|
||||
+#include <linux/memfd.h> // for MFD_CLOEXEC
|
||||
#endif
|
||||
|
||||
#if defined(V8_OS_FUCHSIA)
|
||||
diff -up iridium-browser-2022.12.108.1/third_party/wayland/src/cursor/os-compatibility.c.me iridium-browser-2022.12.108.1/third_party/wayland/src/cursor/os-compatibility.c
|
||||
--- iridium-browser-2022.12.108.1/third_party/wayland/src/cursor/os-compatibility.c.me 2022-12-08 21:59:43.502200984 +0100
|
||||
+++ iridium-browser-2022.12.108.1/third_party/wayland/src/cursor/os-compatibility.c 2022-12-08 22:13:53.375653343 +0100
|
||||
@@ -29,7 +29,8 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
-#include <fcntl.h>
|
||||
+#include <linux/fcntl.h> // for F_SEAL_SHRINK, F_ADD_SEALS, F_SEAL_SEAL
|
||||
+#include <linux/memfd.h> // for MFD_CLOEXEC
|
||||
#include <errno.h>
|
||||
#include <signal.h>
|
||||
#include <string.h>
|
||||
diff -up chromium-116.0.5845.96/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc.me chromium-116.0.5845.96/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc
|
||||
--- chromium-116.0.5845.96/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc.me 2023-08-17 06:32:32.484538849 +0200
|
||||
+++ chromium-116.0.5845.96/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc 2023-08-17 07:02:01.965168328 +0200
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.h"
|
||||
|
||||
#include <sys/mman.h>
|
||||
+#include <linux/memfd.h>
|
||||
|
||||
#include <string>
|
||||
#include <utility>
|
@ -1,28 +0,0 @@
|
||||
diff -up chromium-120.0.6099.35/build/config/compiler/BUILD.gn.than chromium-120.0.6099.35/build/config/compiler/BUILD.gn
|
||||
--- chromium-120.0.6099.35/build/config/compiler/BUILD.gn.than 2023-11-26 17:02:25.647022746 +0100
|
||||
+++ chromium-120.0.6099.35/build/config/compiler/BUILD.gn 2023-11-26 17:15:58.025585358 +0100
|
||||
@@ -616,24 +616,6 @@ config("compiler") {
|
||||
}
|
||||
}
|
||||
|
||||
- # TODO(crbug.com/1488374): This causes binary size growth and potentially
|
||||
- # other problems.
|
||||
- # TODO(crbug.com/1491036): This isn't supported by Cronet's mainline llvm version.
|
||||
- if (default_toolchain != "//build/toolchain/cros:target" &&
|
||||
- !llvm_android_mainline) {
|
||||
- cflags += [
|
||||
- "-mllvm",
|
||||
- "-split-threshold-for-reg-with-hint=0",
|
||||
- ]
|
||||
- if (use_thin_lto && is_a_target_toolchain) {
|
||||
- if (is_win) {
|
||||
- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ]
|
||||
- } else {
|
||||
- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
-
|
||||
# TODO(crbug.com/1235145): Investigate why/if this should be needed.
|
||||
if (is_win) {
|
||||
cflags += [ "/clang:-ffp-contract=off" ]
|
@ -1,12 +0,0 @@
|
||||
diff -up chromium-122.0.6261.29/build/config/compiler/BUILD.gn.me chromium-122.0.6261.29/build/config/compiler/BUILD.gn
|
||||
--- chromium-122.0.6261.29/build/config/compiler/BUILD.gn.me 2024-02-12 14:46:52.691992282 +0100
|
||||
+++ chromium-122.0.6261.29/build/config/compiler/BUILD.gn 2024-02-12 14:48:54.256274068 +0100
|
||||
@@ -787,7 +787,7 @@ config("compiler") {
|
||||
|
||||
# We only use one version of LLVM within a build so there's no need to
|
||||
# upgrade debug info, which can be expensive since it runs the verifier.
|
||||
- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
|
||||
+ ldflags += [ "" ]
|
||||
}
|
||||
|
||||
# TODO(https://crbug.com/1211155): investigate why this isn't effective on
|
@ -1,22 +0,0 @@
|
||||
diff -up chromium-124.0.6367.49/build/config/compiler/BUILD.gn.orig chromium-124.0.6367.49/build/config/compiler/BUILD.gn
|
||||
--- chromium-124.0.6367.49/build/config/compiler/BUILD.gn.orig 2024-04-14 22:43:02.906578948 +0200
|
||||
+++ chromium-124.0.6367.49/build/config/compiler/BUILD.gn 2024-04-14 22:46:19.513353809 +0200
|
||||
@@ -1890,9 +1890,6 @@ config("default_warnings") {
|
||||
|
||||
# TODO(crbug.com/1494809): Evaluate and possibly enable.
|
||||
"-Wno-vla-extension",
|
||||
-
|
||||
- # TODO(https://crbug.com/1490607): Fix and re-enable.
|
||||
- "-Wno-thread-safety-reference-return",
|
||||
]
|
||||
|
||||
cflags_cc += [
|
||||
@@ -1903,7 +1900,7 @@ config("default_warnings") {
|
||||
if (!is_nacl) {
|
||||
cflags_cc += [
|
||||
# TODO(https://crbug.com/1513724): Fix and re-enable.
|
||||
- "-Wno-c++11-narrowing-const-reference",
|
||||
+ "-Wno-c++11-narrowing",
|
||||
]
|
||||
}
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
diff -up chromium-124.0.6367.49/third_party/libavif/BUILD.gn.me chromium-124.0.6367.49/third_party/libavif/BUILD.gn
|
||||
--- chromium-124.0.6367.49/third_party/libavif/BUILD.gn.me 2024-04-15 22:29:28.024287328 +0200
|
||||
+++ chromium-124.0.6367.49/third_party/libavif/BUILD.gn 2024-04-15 22:29:33.205411066 +0200
|
||||
@@ -85,7 +85,6 @@ component("libavif_enc") {
|
||||
configs += [ ":avif_config" ]
|
||||
|
||||
deps = [
|
||||
- "//third_party/libwebp:libwebp_sharpyuv",
|
||||
"//third_party/libyuv",
|
||||
]
|
||||
defines = [ "AVIF_LIBSHARPYUV_ENABLED" ]
|
@ -1,27 +0,0 @@
|
||||
commit a976cb05b4024b7a6452d1541378d718cdfe33e6
|
||||
Author: Takuto Ikuta <tikuta@chromium.org>
|
||||
Date: Thu Apr 25 07:25:32 2024 +0000
|
||||
|
||||
[devtools] fix a missing build dependency to a generated file
|
||||
|
||||
Bug: 336911498
|
||||
Change-Id: I6e6d3afaf33ace53a68271b70165b8c3ab596340
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5487538
|
||||
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
|
||||
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
|
||||
Reviewed-by: Danil Somsikov <dsv@chromium.org>
|
||||
Commit-Queue: Danil Somsikov <dsv@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1292300}
|
||||
|
||||
diff --git a/chrome/browser/devtools/BUILD.gn b/chrome/browser/devtools/BUILD.gn
|
||||
index f0c07cad8cfb4..053199e462f55 100644
|
||||
--- a/chrome/browser/devtools/BUILD.gn
|
||||
+++ b/chrome/browser/devtools/BUILD.gn
|
||||
@@ -117,6 +117,7 @@ static_library("devtools") {
|
||||
"//chrome/browser/autofill:autofill",
|
||||
"//components/autofill/content/browser:browser",
|
||||
"//components/autofill/core/browser:browser",
|
||||
+ "//components/enterprise/buildflags",
|
||||
"//components/paint_preview/buildflags:buildflags",
|
||||
"//components/variations/service:service",
|
||||
"//components/webapps/common:common",
|
@ -1,242 +0,0 @@
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/commerce/shopping_insights_side_panel_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/commerce/shopping_insights_side_panel_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/commerce/shopping_insights_side_panel_ui.h.const 2024-05-18 18:57:37.099203314 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/commerce/shopping_insights_side_panel_ui.h 2024-05-18 22:16:52.879603051 +0200
|
||||
@@ -42,7 +42,7 @@ class ShoppingInsightsSidePanelUI
|
||||
mojo::PendingReceiver<
|
||||
shopping_service::mojom::ShoppingServiceHandlerFactory> receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() {
|
||||
+ static const std::string GetWebUIName() {
|
||||
return "ShoppingInsightsSidePanel";
|
||||
}
|
||||
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/compose/compose_untrusted_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/compose/compose_untrusted_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/compose/compose_untrusted_ui.h.const 2024-05-18 19:03:13.999255471 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/compose/compose_untrusted_ui.h 2024-05-18 22:16:52.883603124 +0200
|
||||
@@ -58,7 +58,7 @@ class ComposeUntrustedUI
|
||||
triggering_web_contents_ = web_contents->GetWeakPtr();
|
||||
}
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "Compose"; }
|
||||
+ static const std::string GetWebUIName() { return "Compose"; }
|
||||
|
||||
private:
|
||||
void CreateComposeSessionUntrustedPageHandler(
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/lens/lens_untrusted_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/lens/lens_untrusted_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/lens/lens_untrusted_ui.h.const 2024-05-18 18:59:16.859995432 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/lens/lens_untrusted_ui.h 2024-05-18 22:16:52.883603124 +0200
|
||||
@@ -47,7 +47,7 @@ class LensUntrustedUI : public Untrusted
|
||||
mojo::PendingReceiver<color_change_listener::mojom::PageHandler>
|
||||
receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "LensUntrusted"; }
|
||||
+ static const std::string GetWebUIName() { return "LensUntrusted"; }
|
||||
|
||||
private:
|
||||
// lens::mojom::LensPageHandlerFactory:
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/lens/search_bubble_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/lens/search_bubble_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/lens/search_bubble_ui.h.const 2024-05-18 18:59:49.020573177 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/lens/search_bubble_ui.h 2024-05-18 22:16:52.883603124 +0200
|
||||
@@ -26,7 +26,7 @@ class SearchBubbleUI : public TopChromeW
|
||||
mojo::PendingReceiver<lens::mojom::SearchBubblePageHandlerFactory>
|
||||
receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "LensSearchBubble"; }
|
||||
+ static const std::string GetWebUIName() { return "LensSearchBubble"; }
|
||||
|
||||
private:
|
||||
// lens::mojom::SearchBubblePageHandlerFactory
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.h.const 2024-05-18 19:00:08.686926471 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.h 2024-05-18 22:16:52.883603124 +0200
|
||||
@@ -63,7 +63,7 @@ class BookmarksSidePanelUI
|
||||
commerce::ShoppingListContextMenuController*
|
||||
GetShoppingListContextMenuController();
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "BookmarksSidePanel"; }
|
||||
+ static const std::string GetWebUIName() { return "BookmarksSidePanel"; }
|
||||
|
||||
private:
|
||||
// side_panel::mojom::BookmarksPageHandlerFactory:
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/companion/companion_side_panel_untrusted_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/companion/companion_side_panel_untrusted_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/companion/companion_side_panel_untrusted_ui.h.const 2024-05-18 19:00:36.351423440 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/companion/companion_side_panel_untrusted_ui.h 2024-05-18 22:16:52.884603143 +0200
|
||||
@@ -34,7 +34,7 @@ class CompanionSidePanelUntrustedUI
|
||||
// Gets a weak pointer to this object.
|
||||
base::WeakPtr<CompanionSidePanelUntrustedUI> GetWeakPtr();
|
||||
|
||||
- static constexpr std::string GetWebUIName() {
|
||||
+ static const std::string GetWebUIName() {
|
||||
return "CompanionSidePanelUntrusted";
|
||||
}
|
||||
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_ui.h.const 2024-05-18 19:00:56.088778012 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_ui.h 2024-05-18 22:16:52.884603143 +0200
|
||||
@@ -102,7 +102,7 @@ class CustomizeChromeUI
|
||||
side_panel::customize_chrome::mojom::WallpaperSearchHandlerFactory>
|
||||
pending_receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "CustomizeChrome"; }
|
||||
+ static const std::string GetWebUIName() { return "CustomizeChrome"; }
|
||||
|
||||
private:
|
||||
// side_panel::mojom::CustomizeChromePageHandlerFactory
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/history_clusters/history_clusters_side_panel_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/history_clusters/history_clusters_side_panel_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/history_clusters/history_clusters_side_panel_ui.h.const 2024-05-18 19:01:15.986135446 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/history_clusters/history_clusters_side_panel_ui.h 2024-05-18 22:16:52.884603143 +0200
|
||||
@@ -70,7 +70,7 @@ class HistoryClustersSidePanelUI : publi
|
||||
void DidFinishNavigation(
|
||||
content::NavigationHandle* navigation_handle) override;
|
||||
|
||||
- static constexpr std::string GetWebUIName() {
|
||||
+ static const std::string GetWebUIName() {
|
||||
return "HistoryClustersSidePanel";
|
||||
}
|
||||
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/performance_controls/performance_side_panel_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/performance_controls/performance_side_panel_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/performance_controls/performance_side_panel_ui.h.const 2024-05-18 19:01:34.274463982 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/performance_controls/performance_side_panel_ui.h 2024-05-18 22:16:52.884603143 +0200
|
||||
@@ -41,7 +41,7 @@ class PerformanceSidePanelUI
|
||||
mojo::PendingReceiver<color_change_listener::mojom::PageHandler>
|
||||
pending_receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "PerformanceSidePanel"; }
|
||||
+ static const std::string GetWebUIName() { return "PerformanceSidePanel"; }
|
||||
|
||||
private:
|
||||
// side_panel::mojom::PerformancePageHandlerFactory:
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.h.const 2024-05-18 19:01:52.842797556 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.h 2024-05-18 22:16:52.884603143 +0200
|
||||
@@ -55,7 +55,7 @@ class ReadAnythingUntrustedUI
|
||||
mojo::PendingReceiver<read_anything::mojom::UntrustedPageHandlerFactory>
|
||||
receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() {
|
||||
+ static const std::string GetWebUIName() {
|
||||
return "ReadAnythingUntrusted";
|
||||
}
|
||||
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/reading_list/reading_list_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/reading_list/reading_list_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/reading_list/reading_list_ui.h.const 2024-05-18 19:02:17.381238375 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/reading_list/reading_list_ui.h 2024-05-18 22:16:52.885603162 +0200
|
||||
@@ -47,7 +47,7 @@ class ReadingListUI : public TopChromeWe
|
||||
|
||||
void SetActiveTabURL(const GURL& url);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "ReadingList"; }
|
||||
+ static const std::string GetWebUIName() { return "ReadingList"; }
|
||||
|
||||
private:
|
||||
// reading_list::mojom::PageHandlerFactory:
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/user_notes/user_notes_side_panel_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/user_notes/user_notes_side_panel_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/user_notes/user_notes_side_panel_ui.h.const 2024-05-18 19:02:34.413544341 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/side_panel/user_notes/user_notes_side_panel_ui.h 2024-05-18 22:16:52.885603162 +0200
|
||||
@@ -35,7 +35,7 @@ class UserNotesSidePanelUI
|
||||
|
||||
void set_browser(Browser* browser) { browser_ = browser; }
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "UserNotesSidePanel"; }
|
||||
+ static const std::string GetWebUIName() { return "UserNotesSidePanel"; }
|
||||
|
||||
private:
|
||||
// user_notes::mojom::UserNotesPageHandlerFactory
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/webui/tab_search/tab_search_ui.h.const chromium-125.0.6422.60/chrome/browser/ui/webui/tab_search/tab_search_ui.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/webui/tab_search/tab_search_ui.h.const 2024-05-18 19:02:52.261864965 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/webui/tab_search/tab_search_ui.h 2024-05-18 22:16:52.885603162 +0200
|
||||
@@ -46,7 +46,7 @@ class TabSearchUI : public TopChromeWebU
|
||||
return page_handler_.get();
|
||||
}
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "TabSearch"; }
|
||||
+ static const std::string GetWebUIName() { return "TabSearch"; }
|
||||
|
||||
private:
|
||||
// tab_search::mojom::PageHandlerFactory
|
||||
diff -up chromium-125.0.6422.60/components/omnibox/browser/on_device_tail_model_service.cc.const chromium-125.0.6422.60/components/omnibox/browser/on_device_tail_model_service.cc
|
||||
--- chromium-125.0.6422.60/components/omnibox/browser/on_device_tail_model_service.cc.const 2024-05-18 23:06:22.071586909 +0200
|
||||
+++ chromium-125.0.6422.60/components/omnibox/browser/on_device_tail_model_service.cc 2024-05-18 23:06:44.827133461 +0200
|
||||
@@ -30,7 +30,7 @@ namespace {
|
||||
// The maximum idle time before the model executor is unloaded from memory.
|
||||
constexpr base::TimeDelta kMaxExecutorIdleSeconds = base::Seconds(60);
|
||||
// Constants for TFlite model validation.
|
||||
-constexpr std::string kTestPrefix = "face";
|
||||
+const std::string kTestPrefix = "face";
|
||||
constexpr std::string_view kModelValidationSwitchName =
|
||||
"omnibox-on-device-tail-model-validation";
|
||||
|
||||
diff -up chromium-124.0.6367.118/components/autofill/core/browser/data_model/autofill_i18n_api.h.me chromium-124.0.6367.118/components/autofill/core/browser/data_model/autofill_i18n_api.h
|
||||
--- chromium-124.0.6367.118/components/autofill/core/browser/data_model/autofill_i18n_api.h.me 2024-05-07 07:58:10.202960298 +0200
|
||||
+++ chromium-124.0.6367.118/components/autofill/core/browser/data_model/autofill_i18n_api.h 2024-05-07 07:59:29.413411767 +0200
|
||||
@@ -16,8 +16,8 @@ namespace autofill::i18n_model_definitio
|
||||
// Country code that represents autofill's legacy address hierarchy model as
|
||||
// stored `kAutofillModelRules`. As a workaround for GCC we declare the
|
||||
// std::string constexpr first.
|
||||
-constexpr inline std::string kLegacyHierarchyCountryCodeString{"XX"};
|
||||
-constexpr AddressCountryCode kLegacyHierarchyCountryCode =
|
||||
+const inline std::string kLegacyHierarchyCountryCodeString{"XX"};
|
||||
+const AddressCountryCode kLegacyHierarchyCountryCode =
|
||||
AddressCountryCode(kLegacyHierarchyCountryCodeString);
|
||||
|
||||
// Creates an instance of the address hierarchy model corresponding to the
|
||||
diff -up chromium-124.0.6367.118/components/autofill/core/browser/metrics/log_event.h.me chromium-124.0.6367.118/components/autofill/core/browser/metrics/log_event.h
|
||||
--- chromium-124.0.6367.118/components/autofill/core/browser/metrics/log_event.h.me 2024-05-07 07:59:38.239573497 +0200
|
||||
+++ chromium-124.0.6367.118/components/autofill/core/browser/metrics/log_event.h 2024-05-07 08:00:55.578990659 +0200
|
||||
@@ -57,7 +57,7 @@ struct IsRequired {
|
||||
// This function is not defined and consteval. Therefore, any evaluation will
|
||||
// fail and fail at compile time.
|
||||
template <typename T>
|
||||
- consteval operator T(); // NOLINT
|
||||
+ operator T(); // NOLINT
|
||||
};
|
||||
|
||||
} // namespace internal
|
||||
diff -up chromium-124.0.6367.118/components/history/core/browser/history_types.h.me chromium-124.0.6367.118/components/history/core/browser/history_types.h
|
||||
--- chromium-124.0.6367.118/components/history/core/browser/history_types.h.me 2024-05-06 18:01:28.606845554 +0200
|
||||
+++ chromium-124.0.6367.118/components/history/core/browser/history_types.h 2024-05-06 18:06:15.492751252 +0200
|
||||
@@ -70,7 +70,7 @@ constexpr VisitedLinkID kInvalidVisitedL
|
||||
typedef std::map<VisitID, VisitSource> VisitSourceMap;
|
||||
|
||||
// Constant used to represent that no app_id is used for matching.
|
||||
-inline constexpr std::optional<std::string> kNoAppIdFilter = std::nullopt;
|
||||
+inline const std::optional<std::string> kNoAppIdFilter = std::nullopt;
|
||||
|
||||
// VisitRow -------------------------------------------------------------------
|
||||
|
||||
diff -up chromium-124.0.6367.118/services/network/shared_dictionary/simple_url_pattern_matcher.cc.me chromium-124.0.6367.118/services/network/shared_dictionary/simple_url_pattern_matcher.cc
|
||||
--- chromium-124.0.6367.118/services/network/shared_dictionary/simple_url_pattern_matcher.cc.me 2024-05-07 00:07:15.720573794 +0200
|
||||
+++ chromium-124.0.6367.118/services/network/shared_dictionary/simple_url_pattern_matcher.cc 2024-05-07 00:08:07.633519604 +0200
|
||||
@@ -28,17 +28,17 @@ namespace network {
|
||||
namespace {
|
||||
|
||||
// https://urlpattern.spec.whatwg.org/#default-options
|
||||
-constexpr liburlpattern::Options kDefaultOptions = {.delimiter_list = "",
|
||||
+const liburlpattern::Options kDefaultOptions = {.delimiter_list = "",
|
||||
.prefix_list = "",
|
||||
.sensitive = true,
|
||||
.strict = true};
|
||||
// https://urlpattern.spec.whatwg.org/#hostname-options
|
||||
-constexpr liburlpattern::Options kHostnameOptions = {.delimiter_list = ".",
|
||||
+const liburlpattern::Options kHostnameOptions = {.delimiter_list = ".",
|
||||
.prefix_list = "",
|
||||
.sensitive = true,
|
||||
.strict = true};
|
||||
// https://urlpattern.spec.whatwg.org/#pathname-options
|
||||
-constexpr liburlpattern::Options kPathnameOptions = {.delimiter_list = "/",
|
||||
+const liburlpattern::Options kPathnameOptions = {.delimiter_list = "/",
|
||||
.prefix_list = "/",
|
||||
.sensitive = true,
|
||||
.strict = true};
|
||||
diff -up chromium-124.0.6367.118/components/autofill/core/browser/form_parsing/transpile_regex_patterns.py.me1 chromium-124.0.6367.118/components/autofill/core/browser/form_parsing/transpile_regex_patterns.py
|
||||
--- chromium-124.0.6367.118/components/autofill/core/browser/form_parsing/transpile_regex_patterns.py.me1 2024-05-07 10:58:13.316756926 +0200
|
||||
+++ chromium-124.0.6367.118/components/autofill/core/browser/form_parsing/transpile_regex_patterns.py 2024-05-07 10:58:30.821083061 +0200
|
||||
@@ -54,7 +54,7 @@ def generate_matching_pattern_equals(nam
|
||||
yield '// Checks if all the matching patterns for the given PatternSources'
|
||||
yield '// and language are the same - meaning that computing predictions for'
|
||||
yield '// both is unnecessary, since it will yield the same result.'
|
||||
- yield 'constexpr bool AreMatchingPatternsEqualImpl(PatternSource a,'
|
||||
+ yield 'const bool AreMatchingPatternsEqualImpl(PatternSource a,'
|
||||
yield ' PatternSource b,'
|
||||
yield ' LanguageCode lang_code) {'
|
||||
yield ' if (a == b) {'
|
@ -1,747 +0,0 @@
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/build.rs chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/build.rs
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/build.rs 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/build.rs 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -36,10 +36,10 @@
|
||||
|
||||
use std::env;
|
||||
use std::ffi::OsString;
|
||||
+use std::iter;
|
||||
use std::path::Path;
|
||||
use std::process::{self, Command, Stdio};
|
||||
use std::str;
|
||||
-use std::u32;
|
||||
|
||||
fn main() {
|
||||
let rustc = rustc_minor_version().unwrap_or(u32::MAX);
|
||||
@@ -63,6 +63,11 @@
|
||||
println!("cargo:rustc-cfg=no_source_text");
|
||||
}
|
||||
|
||||
+ if rustc < 79 {
|
||||
+ println!("cargo:rustc-cfg=no_literal_byte_character");
|
||||
+ println!("cargo:rustc-cfg=no_literal_c_string");
|
||||
+ }
|
||||
+
|
||||
if !cfg!(feature = "proc-macro") {
|
||||
println!("cargo:rerun-if-changed=build.rs");
|
||||
return;
|
||||
@@ -138,15 +143,15 @@
|
||||
let out_dir = cargo_env_var("OUT_DIR");
|
||||
let probefile = Path::new("build").join("probe.rs");
|
||||
|
||||
- // Make sure to pick up Cargo rustc configuration.
|
||||
- let mut cmd = if let Some(wrapper) = env::var_os("RUSTC_WRAPPER") {
|
||||
- let mut cmd = Command::new(wrapper);
|
||||
- // The wrapper's first argument is supposed to be the path to rustc.
|
||||
- cmd.arg(rustc);
|
||||
- cmd
|
||||
- } else {
|
||||
- Command::new(rustc)
|
||||
- };
|
||||
+ let rustc_wrapper = env::var_os("RUSTC_WRAPPER").filter(|wrapper| !wrapper.is_empty());
|
||||
+ let rustc_workspace_wrapper =
|
||||
+ env::var_os("RUSTC_WORKSPACE_WRAPPER").filter(|wrapper| !wrapper.is_empty());
|
||||
+ let mut rustc = rustc_wrapper
|
||||
+ .into_iter()
|
||||
+ .chain(rustc_workspace_wrapper)
|
||||
+ .chain(iter::once(rustc));
|
||||
+ let mut cmd = Command::new(rustc.next().unwrap());
|
||||
+ cmd.args(rustc);
|
||||
|
||||
if !rustc_bootstrap {
|
||||
cmd.env_remove("RUSTC_BOOTSTRAP");
|
||||
@@ -156,6 +161,7 @@
|
||||
.arg("--edition=2021")
|
||||
.arg("--crate-name=proc_macro2")
|
||||
.arg("--crate-type=lib")
|
||||
+ .arg("--cap-lints=allow")
|
||||
.arg("--emit=dep-info,metadata")
|
||||
.arg("--out-dir")
|
||||
.arg(out_dir)
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/Cargo.toml chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/Cargo.toml
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/Cargo.toml 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/Cargo.toml 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -13,7 +13,7 @@
|
||||
edition = "2021"
|
||||
rust-version = "1.56"
|
||||
name = "proc-macro2"
|
||||
-version = "1.0.78"
|
||||
+version = "1.0.80"
|
||||
authors = [
|
||||
"David Tolnay <dtolnay@gmail.com>",
|
||||
"Alex Crichton <alex@alexcrichton.com>",
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/Cargo.toml.orig chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/Cargo.toml.orig
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/Cargo.toml.orig 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/Cargo.toml.orig 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "proc-macro2"
|
||||
-version = "1.0.78"
|
||||
+version = "1.0.80"
|
||||
authors = ["David Tolnay <dtolnay@gmail.com>", "Alex Crichton <alex@alexcrichton.com>"]
|
||||
autobenches = false
|
||||
categories = ["development-tools::procedural-macro-helpers"]
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/.cargo_vcs_info.json chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/.cargo_vcs_info.json
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/.cargo_vcs_info.json 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/.cargo_vcs_info.json 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"git": {
|
||||
- "sha1": "d850a1db5e3fe7732d62cacbfc4145e496c2a80e"
|
||||
+ "sha1": "da51f8d005cc5d8299c1872fad9bbe63b07c31c7"
|
||||
},
|
||||
"path_in_vcs": ""
|
||||
}
|
||||
\ Kein Zeilenumbruch am Dateiende.
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/.github/workflows/ci.yml chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/.github/workflows/ci.yml
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/.github/workflows/ci.yml 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/.github/workflows/ci.yml 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -198,6 +198,7 @@
|
||||
timeout-minutes: 45
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
+ - uses: dtolnay/rust-toolchain@stable
|
||||
- uses: dtolnay/install@cargo-outdated
|
||||
- run: cargo outdated --workspace --exit-code 1
|
||||
- run: cargo outdated --manifest-path fuzz/Cargo.toml --exit-code 1
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/src/fallback.rs chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/src/fallback.rs
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/src/fallback.rs 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/src/fallback.rs 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -15,7 +15,9 @@
|
||||
use core::ops::Range;
|
||||
use core::ops::RangeBounds;
|
||||
use core::ptr;
|
||||
-use core::str::FromStr;
|
||||
+use core::str::{self, FromStr};
|
||||
+use std::ffi::CStr;
|
||||
+#[cfg(procmacro2_semver_exempt)]
|
||||
use std::path::PathBuf;
|
||||
|
||||
/// Force use of proc-macro2's fallback implementation of the API for now, even
|
||||
@@ -297,11 +299,13 @@
|
||||
}
|
||||
}
|
||||
|
||||
+#[cfg(procmacro2_semver_exempt)]
|
||||
#[derive(Clone, PartialEq, Eq)]
|
||||
pub(crate) struct SourceFile {
|
||||
path: PathBuf,
|
||||
}
|
||||
|
||||
+#[cfg(procmacro2_semver_exempt)]
|
||||
impl SourceFile {
|
||||
/// Get the path to this source file as a string.
|
||||
pub fn path(&self) -> PathBuf {
|
||||
@@ -313,6 +317,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
+#[cfg(procmacro2_semver_exempt)]
|
||||
impl Debug for SourceFile {
|
||||
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||
f.debug_struct("SourceFile")
|
||||
@@ -922,7 +927,7 @@
|
||||
|
||||
#[derive(Clone)]
|
||||
pub(crate) struct Literal {
|
||||
- repr: String,
|
||||
+ pub(crate) repr: String,
|
||||
span: Span,
|
||||
}
|
||||
|
||||
@@ -1003,71 +1008,98 @@
|
||||
Literal::_new(s)
|
||||
}
|
||||
|
||||
- pub fn string(t: &str) -> Literal {
|
||||
- let mut repr = String::with_capacity(t.len() + 2);
|
||||
+ pub fn string(string: &str) -> Literal {
|
||||
+ let mut repr = String::with_capacity(string.len() + 2);
|
||||
repr.push('"');
|
||||
- let mut chars = t.chars();
|
||||
- while let Some(ch) = chars.next() {
|
||||
- if ch == '\0' {
|
||||
- repr.push_str(
|
||||
- if chars
|
||||
- .as_str()
|
||||
- .starts_with(|next| '0' <= next && next <= '7')
|
||||
- {
|
||||
- // circumvent clippy::octal_escapes lint
|
||||
- "\\x00"
|
||||
- } else {
|
||||
- "\\0"
|
||||
- },
|
||||
- );
|
||||
- } else if ch == '\'' {
|
||||
- // escape_debug turns this into "\'" which is unnecessary.
|
||||
- repr.push(ch);
|
||||
- } else {
|
||||
- repr.extend(ch.escape_debug());
|
||||
- }
|
||||
- }
|
||||
+ escape_utf8(string, &mut repr);
|
||||
repr.push('"');
|
||||
Literal::_new(repr)
|
||||
}
|
||||
|
||||
- pub fn character(t: char) -> Literal {
|
||||
+ pub fn character(ch: char) -> Literal {
|
||||
let mut repr = String::new();
|
||||
repr.push('\'');
|
||||
- if t == '"' {
|
||||
+ if ch == '"' {
|
||||
// escape_debug turns this into '\"' which is unnecessary.
|
||||
- repr.push(t);
|
||||
+ repr.push(ch);
|
||||
} else {
|
||||
- repr.extend(t.escape_debug());
|
||||
+ repr.extend(ch.escape_debug());
|
||||
+ }
|
||||
+ repr.push('\'');
|
||||
+ Literal::_new(repr)
|
||||
+ }
|
||||
+
|
||||
+ pub fn byte_character(byte: u8) -> Literal {
|
||||
+ let mut repr = "b'".to_string();
|
||||
+ #[allow(clippy::match_overlapping_arm)]
|
||||
+ match byte {
|
||||
+ b'\0' => repr.push_str(r"\0"),
|
||||
+ b'\t' => repr.push_str(r"\t"),
|
||||
+ b'\n' => repr.push_str(r"\n"),
|
||||
+ b'\r' => repr.push_str(r"\r"),
|
||||
+ b'\'' => repr.push_str(r"\'"),
|
||||
+ b'\\' => repr.push_str(r"\\"),
|
||||
+ b'\x20'..=b'\x7E' => repr.push(byte as char),
|
||||
+ _ => {
|
||||
+ let _ = write!(repr, r"\x{:02X}", byte);
|
||||
+ }
|
||||
}
|
||||
repr.push('\'');
|
||||
Literal::_new(repr)
|
||||
}
|
||||
|
||||
pub fn byte_string(bytes: &[u8]) -> Literal {
|
||||
- let mut escaped = "b\"".to_string();
|
||||
+ let mut repr = "b\"".to_string();
|
||||
let mut bytes = bytes.iter();
|
||||
while let Some(&b) = bytes.next() {
|
||||
#[allow(clippy::match_overlapping_arm)]
|
||||
match b {
|
||||
- b'\0' => escaped.push_str(match bytes.as_slice().first() {
|
||||
+ b'\0' => repr.push_str(match bytes.as_slice().first() {
|
||||
// circumvent clippy::octal_escapes lint
|
||||
Some(b'0'..=b'7') => r"\x00",
|
||||
_ => r"\0",
|
||||
}),
|
||||
- b'\t' => escaped.push_str(r"\t"),
|
||||
- b'\n' => escaped.push_str(r"\n"),
|
||||
- b'\r' => escaped.push_str(r"\r"),
|
||||
- b'"' => escaped.push_str("\\\""),
|
||||
- b'\\' => escaped.push_str("\\\\"),
|
||||
- b'\x20'..=b'\x7E' => escaped.push(b as char),
|
||||
+ b'\t' => repr.push_str(r"\t"),
|
||||
+ b'\n' => repr.push_str(r"\n"),
|
||||
+ b'\r' => repr.push_str(r"\r"),
|
||||
+ b'"' => repr.push_str("\\\""),
|
||||
+ b'\\' => repr.push_str(r"\\"),
|
||||
+ b'\x20'..=b'\x7E' => repr.push(b as char),
|
||||
_ => {
|
||||
- let _ = write!(escaped, "\\x{:02X}", b);
|
||||
+ let _ = write!(repr, r"\x{:02X}", b);
|
||||
}
|
||||
}
|
||||
}
|
||||
- escaped.push('"');
|
||||
- Literal::_new(escaped)
|
||||
+ repr.push('"');
|
||||
+ Literal::_new(repr)
|
||||
+ }
|
||||
+
|
||||
+ pub fn c_string(string: &CStr) -> Literal {
|
||||
+ let mut repr = "c\"".to_string();
|
||||
+ let mut bytes = string.to_bytes();
|
||||
+ while !bytes.is_empty() {
|
||||
+ let (valid, invalid) = match str::from_utf8(bytes) {
|
||||
+ Ok(all_valid) => {
|
||||
+ bytes = b"";
|
||||
+ (all_valid, bytes)
|
||||
+ }
|
||||
+ Err(utf8_error) => {
|
||||
+ let (valid, rest) = bytes.split_at(utf8_error.valid_up_to());
|
||||
+ let valid = str::from_utf8(valid).unwrap();
|
||||
+ let invalid = utf8_error
|
||||
+ .error_len()
|
||||
+ .map_or(rest, |error_len| &rest[..error_len]);
|
||||
+ bytes = &bytes[valid.len() + invalid.len()..];
|
||||
+ (valid, invalid)
|
||||
+ }
|
||||
+ };
|
||||
+ escape_utf8(valid, &mut repr);
|
||||
+ for &byte in invalid {
|
||||
+ let _ = write!(repr, r"\x{:02X}", byte);
|
||||
+ }
|
||||
+ }
|
||||
+ repr.push('"');
|
||||
+ Literal::_new(repr)
|
||||
}
|
||||
|
||||
pub fn span(&self) -> Span {
|
||||
@@ -1168,3 +1200,27 @@
|
||||
debug.finish()
|
||||
}
|
||||
}
|
||||
+
|
||||
+fn escape_utf8(string: &str, repr: &mut String) {
|
||||
+ let mut chars = string.chars();
|
||||
+ while let Some(ch) = chars.next() {
|
||||
+ if ch == '\0' {
|
||||
+ repr.push_str(
|
||||
+ if chars
|
||||
+ .as_str()
|
||||
+ .starts_with(|next| '0' <= next && next <= '7')
|
||||
+ {
|
||||
+ // circumvent clippy::octal_escapes lint
|
||||
+ r"\x00"
|
||||
+ } else {
|
||||
+ r"\0"
|
||||
+ },
|
||||
+ );
|
||||
+ } else if ch == '\'' {
|
||||
+ // escape_debug turns this into "\'" which is unnecessary.
|
||||
+ repr.push(ch);
|
||||
+ } else {
|
||||
+ repr.extend(ch.escape_debug());
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/src/lib.rs chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/src/lib.rs
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/src/lib.rs 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/src/lib.rs 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -86,7 +86,7 @@
|
||||
//! a different thread.
|
||||
|
||||
// Proc-macro2 types in rustdoc of other crates get linked to here.
|
||||
-#![doc(html_root_url = "https://docs.rs/proc-macro2/1.0.78")]
|
||||
+#![doc(html_root_url = "https://docs.rs/proc-macro2/1.0.80")]
|
||||
#![cfg_attr(any(proc_macro_span, super_unstable), feature(proc_macro_span))]
|
||||
#![cfg_attr(super_unstable, feature(proc_macro_def_site))]
|
||||
#![cfg_attr(doc_cfg, feature(doc_cfg))]
|
||||
@@ -96,6 +96,7 @@
|
||||
clippy::cast_possible_truncation,
|
||||
clippy::checked_conversions,
|
||||
clippy::doc_markdown,
|
||||
+ clippy::incompatible_msrv,
|
||||
clippy::items_after_statements,
|
||||
clippy::iter_without_into_iter,
|
||||
clippy::let_underscore_untyped,
|
||||
@@ -169,6 +170,7 @@
|
||||
use core::ops::RangeBounds;
|
||||
use core::str::FromStr;
|
||||
use std::error::Error;
|
||||
+use std::ffi::CStr;
|
||||
#[cfg(procmacro2_semver_exempt)]
|
||||
use std::path::PathBuf;
|
||||
|
||||
@@ -1233,9 +1235,19 @@
|
||||
Literal::_new(imp::Literal::character(ch))
|
||||
}
|
||||
|
||||
+ /// Byte character literal.
|
||||
+ pub fn byte_character(byte: u8) -> Literal {
|
||||
+ Literal::_new(imp::Literal::byte_character(byte))
|
||||
+ }
|
||||
+
|
||||
/// Byte string literal.
|
||||
- pub fn byte_string(s: &[u8]) -> Literal {
|
||||
- Literal::_new(imp::Literal::byte_string(s))
|
||||
+ pub fn byte_string(bytes: &[u8]) -> Literal {
|
||||
+ Literal::_new(imp::Literal::byte_string(bytes))
|
||||
+ }
|
||||
+
|
||||
+ /// C string literal.
|
||||
+ pub fn c_string(string: &CStr) -> Literal {
|
||||
+ Literal::_new(imp::Literal::c_string(string))
|
||||
}
|
||||
|
||||
/// Returns the span encompassing this literal.
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/src/wrapper.rs chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/src/wrapper.rs
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/src/wrapper.rs 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/src/wrapper.rs 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -7,6 +7,7 @@
|
||||
use core::ops::Range;
|
||||
use core::ops::RangeBounds;
|
||||
use core::str::FromStr;
|
||||
+use std::ffi::CStr;
|
||||
use std::panic;
|
||||
#[cfg(super_unstable)]
|
||||
use std::path::PathBuf;
|
||||
@@ -846,19 +847,38 @@
|
||||
}
|
||||
}
|
||||
|
||||
- pub fn string(t: &str) -> Literal {
|
||||
+ pub fn string(string: &str) -> Literal {
|
||||
if inside_proc_macro() {
|
||||
- Literal::Compiler(proc_macro::Literal::string(t))
|
||||
+ Literal::Compiler(proc_macro::Literal::string(string))
|
||||
} else {
|
||||
- Literal::Fallback(fallback::Literal::string(t))
|
||||
+ Literal::Fallback(fallback::Literal::string(string))
|
||||
}
|
||||
}
|
||||
|
||||
- pub fn character(t: char) -> Literal {
|
||||
+ pub fn character(ch: char) -> Literal {
|
||||
if inside_proc_macro() {
|
||||
- Literal::Compiler(proc_macro::Literal::character(t))
|
||||
+ Literal::Compiler(proc_macro::Literal::character(ch))
|
||||
} else {
|
||||
- Literal::Fallback(fallback::Literal::character(t))
|
||||
+ Literal::Fallback(fallback::Literal::character(ch))
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ pub fn byte_character(byte: u8) -> Literal {
|
||||
+ if inside_proc_macro() {
|
||||
+ Literal::Compiler({
|
||||
+ #[cfg(not(no_literal_byte_character))]
|
||||
+ {
|
||||
+ proc_macro::Literal::byte_character(byte)
|
||||
+ }
|
||||
+
|
||||
+ #[cfg(no_literal_byte_character)]
|
||||
+ {
|
||||
+ let fallback = fallback::Literal::byte_character(byte);
|
||||
+ fallback.repr.parse::<proc_macro::Literal>().unwrap()
|
||||
+ }
|
||||
+ })
|
||||
+ } else {
|
||||
+ Literal::Fallback(fallback::Literal::byte_character(byte))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -870,6 +890,25 @@
|
||||
}
|
||||
}
|
||||
|
||||
+ pub fn c_string(string: &CStr) -> Literal {
|
||||
+ if inside_proc_macro() {
|
||||
+ Literal::Compiler({
|
||||
+ #[cfg(not(no_literal_c_string))]
|
||||
+ {
|
||||
+ proc_macro::Literal::c_string(string)
|
||||
+ }
|
||||
+
|
||||
+ #[cfg(no_literal_c_string)]
|
||||
+ {
|
||||
+ let fallback = fallback::Literal::c_string(string);
|
||||
+ fallback.repr.parse::<proc_macro::Literal>().unwrap()
|
||||
+ }
|
||||
+ })
|
||||
+ } else {
|
||||
+ Literal::Fallback(fallback::Literal::c_string(string))
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
pub fn span(&self) -> Span {
|
||||
match self {
|
||||
Literal::Compiler(lit) => Span::Compiler(lit.span()),
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/tests/marker.rs chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/tests/marker.rs
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/tests/marker.rs 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/tests/marker.rs 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -21,6 +21,7 @@
|
||||
$(
|
||||
{
|
||||
// Implemented for types that implement $marker.
|
||||
+ #[allow(dead_code)]
|
||||
trait IsNotImplemented {
|
||||
fn assert_not_implemented() {}
|
||||
}
|
||||
diff -Nur chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/tests/test.rs chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/tests/test.rs
|
||||
--- chromium-123.0.6312.122/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.78/tests/test.rs 2024-04-10 23:25:21.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/rust/chromium_crates_io/vendor/proc-macro2-1.0.80/tests/test.rs 2024-05-15 23:47:24.000000000 +0200
|
||||
@@ -1,11 +1,14 @@
|
||||
#![allow(
|
||||
clippy::assertions_on_result_states,
|
||||
clippy::items_after_statements,
|
||||
+ clippy::needless_pass_by_value,
|
||||
+ clippy::needless_raw_string_hashes,
|
||||
clippy::non_ascii_literal,
|
||||
clippy::octal_escapes
|
||||
)]
|
||||
|
||||
use proc_macro2::{Ident, Literal, Punct, Spacing, Span, TokenStream, TokenTree};
|
||||
+use std::ffi::CStr;
|
||||
use std::iter;
|
||||
use std::str::{self, FromStr};
|
||||
|
||||
@@ -96,12 +99,22 @@
|
||||
|
||||
#[test]
|
||||
fn literal_string() {
|
||||
- assert_eq!(Literal::string("foo").to_string(), "\"foo\"");
|
||||
- assert_eq!(Literal::string("\"").to_string(), "\"\\\"\"");
|
||||
- assert_eq!(Literal::string("didn't").to_string(), "\"didn't\"");
|
||||
- assert_eq!(
|
||||
- Literal::string("a\00b\07c\08d\0e\0").to_string(),
|
||||
- "\"a\\x000b\\x007c\\08d\\0e\\0\"",
|
||||
+ #[track_caller]
|
||||
+ fn assert(literal: Literal, expected: &str) {
|
||||
+ assert_eq!(literal.to_string(), expected.trim());
|
||||
+ }
|
||||
+
|
||||
+ assert(Literal::string(""), r#" "" "#);
|
||||
+ assert(Literal::string("aA"), r#" "aA" "#);
|
||||
+ assert(Literal::string("\t"), r#" "\t" "#);
|
||||
+ assert(Literal::string("❤"), r#" "❤" "#);
|
||||
+ assert(Literal::string("'"), r#" "'" "#);
|
||||
+ assert(Literal::string("\""), r#" "\"" "#);
|
||||
+ assert(Literal::string("\0"), r#" "\0" "#);
|
||||
+ assert(Literal::string("\u{1}"), r#" "\u{1}" "#);
|
||||
+ assert(
|
||||
+ Literal::string("a\00b\07c\08d\0e\0"),
|
||||
+ r#" "a\x000b\x007c\08d\0e\0" "#,
|
||||
);
|
||||
|
||||
"\"\\\r\n x\"".parse::<TokenStream>().unwrap();
|
||||
@@ -133,15 +146,42 @@
|
||||
}
|
||||
|
||||
#[test]
|
||||
+fn literal_byte_character() {
|
||||
+ #[track_caller]
|
||||
+ fn assert(literal: Literal, expected: &str) {
|
||||
+ assert_eq!(literal.to_string(), expected.trim());
|
||||
+ }
|
||||
+
|
||||
+ assert(Literal::byte_character(b'a'), r#" b'a' "#);
|
||||
+ assert(Literal::byte_character(b'\0'), r#" b'\0' "#);
|
||||
+ assert(Literal::byte_character(b'\t'), r#" b'\t' "#);
|
||||
+ assert(Literal::byte_character(b'\n'), r#" b'\n' "#);
|
||||
+ assert(Literal::byte_character(b'\r'), r#" b'\r' "#);
|
||||
+ assert(Literal::byte_character(b'\''), r#" b'\'' "#);
|
||||
+ assert(Literal::byte_character(b'\\'), r#" b'\\' "#);
|
||||
+ assert(Literal::byte_character(b'\x1f'), r#" b'\x1F' "#);
|
||||
+ assert(Literal::byte_character(b'"'), r#" b'"' "#);
|
||||
+}
|
||||
+
|
||||
+#[test]
|
||||
fn literal_byte_string() {
|
||||
- assert_eq!(Literal::byte_string(b"").to_string(), "b\"\"");
|
||||
- assert_eq!(
|
||||
- Literal::byte_string(b"\0\t\n\r\"\\2\x10").to_string(),
|
||||
- "b\"\\0\\t\\n\\r\\\"\\\\2\\x10\"",
|
||||
- );
|
||||
- assert_eq!(
|
||||
- Literal::byte_string(b"a\00b\07c\08d\0e\0").to_string(),
|
||||
- "b\"a\\x000b\\x007c\\08d\\0e\\0\"",
|
||||
+ #[track_caller]
|
||||
+ fn assert(literal: Literal, expected: &str) {
|
||||
+ assert_eq!(literal.to_string(), expected.trim());
|
||||
+ }
|
||||
+
|
||||
+ assert(Literal::byte_string(b""), r#" b"" "#);
|
||||
+ assert(Literal::byte_string(b"\0"), r#" b"\0" "#);
|
||||
+ assert(Literal::byte_string(b"\t"), r#" b"\t" "#);
|
||||
+ assert(Literal::byte_string(b"\n"), r#" b"\n" "#);
|
||||
+ assert(Literal::byte_string(b"\r"), r#" b"\r" "#);
|
||||
+ assert(Literal::byte_string(b"\""), r#" b"\"" "#);
|
||||
+ assert(Literal::byte_string(b"\\"), r#" b"\\" "#);
|
||||
+ assert(Literal::byte_string(b"\x1f"), r#" b"\x1F" "#);
|
||||
+ assert(Literal::byte_string(b"'"), r#" b"'" "#);
|
||||
+ assert(
|
||||
+ Literal::byte_string(b"a\00b\07c\08d\0e\0"),
|
||||
+ r#" b"a\x000b\x007c\08d\0e\0" "#,
|
||||
);
|
||||
|
||||
"b\"\\\r\n x\"".parse::<TokenStream>().unwrap();
|
||||
@@ -152,6 +192,41 @@
|
||||
|
||||
#[test]
|
||||
fn literal_c_string() {
|
||||
+ #[track_caller]
|
||||
+ fn assert(literal: Literal, expected: &str) {
|
||||
+ assert_eq!(literal.to_string(), expected.trim());
|
||||
+ }
|
||||
+
|
||||
+ assert(Literal::c_string(<&CStr>::default()), r#" c"" "#);
|
||||
+ assert(
|
||||
+ Literal::c_string(CStr::from_bytes_with_nul(b"aA\0").unwrap()),
|
||||
+ r#" c"aA" "#,
|
||||
+ );
|
||||
+ assert(
|
||||
+ Literal::c_string(CStr::from_bytes_with_nul(b"aA\0").unwrap()),
|
||||
+ r#" c"aA" "#,
|
||||
+ );
|
||||
+ assert(
|
||||
+ Literal::c_string(CStr::from_bytes_with_nul(b"\t\0").unwrap()),
|
||||
+ r#" c"\t" "#,
|
||||
+ );
|
||||
+ assert(
|
||||
+ Literal::c_string(CStr::from_bytes_with_nul(b"\xE2\x9D\xA4\0").unwrap()),
|
||||
+ r#" c"❤" "#,
|
||||
+ );
|
||||
+ assert(
|
||||
+ Literal::c_string(CStr::from_bytes_with_nul(b"'\0").unwrap()),
|
||||
+ r#" c"'" "#,
|
||||
+ );
|
||||
+ assert(
|
||||
+ Literal::c_string(CStr::from_bytes_with_nul(b"\"\0").unwrap()),
|
||||
+ r#" c"\"" "#,
|
||||
+ );
|
||||
+ assert(
|
||||
+ Literal::c_string(CStr::from_bytes_with_nul(b"\x7F\xFF\xFE\xCC\xB3\0").unwrap()),
|
||||
+ r#" c"\u{7f}\xFF\xFE\u{333}" "#,
|
||||
+ );
|
||||
+
|
||||
let strings = r###"
|
||||
c"hello\x80我叫\u{1F980}" // from the RFC
|
||||
cr"\"
|
||||
@@ -188,49 +263,80 @@
|
||||
|
||||
#[test]
|
||||
fn literal_character() {
|
||||
- assert_eq!(Literal::character('x').to_string(), "'x'");
|
||||
- assert_eq!(Literal::character('\'').to_string(), "'\\''");
|
||||
- assert_eq!(Literal::character('"').to_string(), "'\"'");
|
||||
+ #[track_caller]
|
||||
+ fn assert(literal: Literal, expected: &str) {
|
||||
+ assert_eq!(literal.to_string(), expected.trim());
|
||||
+ }
|
||||
+
|
||||
+ assert(Literal::character('a'), r#" 'a' "#);
|
||||
+ assert(Literal::character('\t'), r#" '\t' "#);
|
||||
+ assert(Literal::character('❤'), r#" '❤' "#);
|
||||
+ assert(Literal::character('\''), r#" '\'' "#);
|
||||
+ assert(Literal::character('"'), r#" '"' "#);
|
||||
+ assert(Literal::character('\0'), r#" '\0' "#);
|
||||
+ assert(Literal::character('\u{1}'), r#" '\u{1}' "#);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn literal_integer() {
|
||||
- assert_eq!(Literal::u8_suffixed(10).to_string(), "10u8");
|
||||
- assert_eq!(Literal::u16_suffixed(10).to_string(), "10u16");
|
||||
- assert_eq!(Literal::u32_suffixed(10).to_string(), "10u32");
|
||||
- assert_eq!(Literal::u64_suffixed(10).to_string(), "10u64");
|
||||
- assert_eq!(Literal::u128_suffixed(10).to_string(), "10u128");
|
||||
- assert_eq!(Literal::usize_suffixed(10).to_string(), "10usize");
|
||||
-
|
||||
- assert_eq!(Literal::i8_suffixed(10).to_string(), "10i8");
|
||||
- assert_eq!(Literal::i16_suffixed(10).to_string(), "10i16");
|
||||
- assert_eq!(Literal::i32_suffixed(10).to_string(), "10i32");
|
||||
- assert_eq!(Literal::i64_suffixed(10).to_string(), "10i64");
|
||||
- assert_eq!(Literal::i128_suffixed(10).to_string(), "10i128");
|
||||
- assert_eq!(Literal::isize_suffixed(10).to_string(), "10isize");
|
||||
-
|
||||
- assert_eq!(Literal::u8_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::u16_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::u32_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::u64_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::u128_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::usize_unsuffixed(10).to_string(), "10");
|
||||
-
|
||||
- assert_eq!(Literal::i8_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::i16_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::i32_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::i64_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::i128_unsuffixed(10).to_string(), "10");
|
||||
- assert_eq!(Literal::isize_unsuffixed(10).to_string(), "10");
|
||||
+ #[track_caller]
|
||||
+ fn assert(literal: Literal, expected: &str) {
|
||||
+ assert_eq!(literal.to_string(), expected);
|
||||
+ }
|
||||
+
|
||||
+ assert(Literal::u8_suffixed(10), "10u8");
|
||||
+ assert(Literal::u16_suffixed(10), "10u16");
|
||||
+ assert(Literal::u32_suffixed(10), "10u32");
|
||||
+ assert(Literal::u64_suffixed(10), "10u64");
|
||||
+ assert(Literal::u128_suffixed(10), "10u128");
|
||||
+ assert(Literal::usize_suffixed(10), "10usize");
|
||||
+
|
||||
+ assert(Literal::i8_suffixed(10), "10i8");
|
||||
+ assert(Literal::i16_suffixed(10), "10i16");
|
||||
+ assert(Literal::i32_suffixed(10), "10i32");
|
||||
+ assert(Literal::i64_suffixed(10), "10i64");
|
||||
+ assert(Literal::i128_suffixed(10), "10i128");
|
||||
+ assert(Literal::isize_suffixed(10), "10isize");
|
||||
+
|
||||
+ assert(Literal::u8_unsuffixed(10), "10");
|
||||
+ assert(Literal::u16_unsuffixed(10), "10");
|
||||
+ assert(Literal::u32_unsuffixed(10), "10");
|
||||
+ assert(Literal::u64_unsuffixed(10), "10");
|
||||
+ assert(Literal::u128_unsuffixed(10), "10");
|
||||
+ assert(Literal::usize_unsuffixed(10), "10");
|
||||
+
|
||||
+ assert(Literal::i8_unsuffixed(10), "10");
|
||||
+ assert(Literal::i16_unsuffixed(10), "10");
|
||||
+ assert(Literal::i32_unsuffixed(10), "10");
|
||||
+ assert(Literal::i64_unsuffixed(10), "10");
|
||||
+ assert(Literal::i128_unsuffixed(10), "10");
|
||||
+ assert(Literal::isize_unsuffixed(10), "10");
|
||||
+
|
||||
+ assert(Literal::i32_suffixed(-10), "-10i32");
|
||||
+ assert(Literal::i32_unsuffixed(-10), "-10");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn literal_float() {
|
||||
- assert_eq!(Literal::f32_suffixed(10.0).to_string(), "10f32");
|
||||
- assert_eq!(Literal::f64_suffixed(10.0).to_string(), "10f64");
|
||||
-
|
||||
- assert_eq!(Literal::f32_unsuffixed(10.0).to_string(), "10.0");
|
||||
- assert_eq!(Literal::f64_unsuffixed(10.0).to_string(), "10.0");
|
||||
+ #[track_caller]
|
||||
+ fn assert(literal: Literal, expected: &str) {
|
||||
+ assert_eq!(literal.to_string(), expected);
|
||||
+ }
|
||||
+
|
||||
+ assert(Literal::f32_suffixed(10.0), "10f32");
|
||||
+ assert(Literal::f32_suffixed(-10.0), "-10f32");
|
||||
+ assert(Literal::f64_suffixed(10.0), "10f64");
|
||||
+ assert(Literal::f64_suffixed(-10.0), "-10f64");
|
||||
+
|
||||
+ assert(Literal::f32_unsuffixed(10.0), "10.0");
|
||||
+ assert(Literal::f32_unsuffixed(-10.0), "-10.0");
|
||||
+ assert(Literal::f64_unsuffixed(10.0), "10.0");
|
||||
+ assert(Literal::f64_unsuffixed(-10.0), "-10.0");
|
||||
+
|
||||
+ assert(
|
||||
+ Literal::f64_unsuffixed(1e100),
|
||||
+ "10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0",
|
||||
+ );
|
||||
}
|
||||
|
||||
#[test]
|
||||
@@ -248,9 +354,13 @@
|
||||
assert_eq!(token_count("1._m"), 3);
|
||||
assert_eq!(token_count("\"\"s"), 1);
|
||||
assert_eq!(token_count("r\"\"r"), 1);
|
||||
+ assert_eq!(token_count("r#\"\"#r"), 1);
|
||||
assert_eq!(token_count("b\"\"b"), 1);
|
||||
assert_eq!(token_count("br\"\"br"), 1);
|
||||
- assert_eq!(token_count("r#\"\"#r"), 1);
|
||||
+ assert_eq!(token_count("br#\"\"#br"), 1);
|
||||
+ assert_eq!(token_count("c\"\"c"), 1);
|
||||
+ assert_eq!(token_count("cr\"\"cr"), 1);
|
||||
+ assert_eq!(token_count("cr#\"\"#cr"), 1);
|
||||
assert_eq!(token_count("'c'c"), 1);
|
||||
assert_eq!(token_count("b'b'b"), 1);
|
||||
assert_eq!(token_count("0E"), 1);
|
||||
@@ -378,7 +488,7 @@
|
||||
roundtrip("'a");
|
||||
roundtrip("'_");
|
||||
roundtrip("'static");
|
||||
- roundtrip("'\\u{10__FFFF}'");
|
||||
+ roundtrip(r"'\u{10__FFFF}'");
|
||||
roundtrip("\"\\u{10_F0FF__}foo\\u{1_0_0_0__}\"");
|
||||
}
|
||||
|
||||
@@ -401,6 +511,7 @@
|
||||
fail("\"\\\r \""); // backslash carriage return
|
||||
fail("'aa'aa");
|
||||
fail("br##\"\"#");
|
||||
+ fail("cr##\"\"#");
|
||||
fail("\"\\\n\u{85}\r\"");
|
||||
}
|
||||
|
@ -1,32 +0,0 @@
|
||||
commit aa53c3ab8df7f7c1d42c30d4b184a8f8b0a8e50d
|
||||
Author: Jose Dapena Paz <jdapena@igalia.com>
|
||||
Date: Tue Apr 16 12:14:15 2024 +0000
|
||||
|
||||
IWYU: add missing include for usage of FieldDataManager in autofill_agent.h
|
||||
|
||||
Change-Id: I70575d1dd72b9334e3b8d4805779a7e45788989e
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5392840
|
||||
Reviewed-by: Florian Leimgruber <fleimgruber@google.com>
|
||||
Commit-Queue: José Dapena Paz <jdapena@igalia.com>
|
||||
Cr-Commit-Position: refs/heads/main@{#1287967}
|
||||
|
||||
diff --git a/components/autofill/content/renderer/autofill_agent.h b/components/autofill/content/renderer/autofill_agent.h
|
||||
index 76a25d72c87cc..01462aefdaae6 100644
|
||||
--- a/components/autofill/content/renderer/autofill_agent.h
|
||||
+++ b/components/autofill/content/renderer/autofill_agent.h
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "components/autofill/content/renderer/form_autofill_util.h"
|
||||
#include "components/autofill/content/renderer/form_tracker.h"
|
||||
#include "components/autofill/core/common/autofill_features.h"
|
||||
+#include "components/autofill/core/common/field_data_manager.h"
|
||||
#include "components/autofill/core/common/mojom/autofill_types.mojom-shared.h"
|
||||
#include "components/autofill/core/common/unique_ids.h"
|
||||
#include "content/public/renderer/render_frame_observer.h"
|
||||
@@ -51,7 +52,6 @@ namespace autofill {
|
||||
class FormCache;
|
||||
class PasswordAutofillAgent;
|
||||
class PasswordGenerationAgent;
|
||||
-class FieldDataManager;
|
||||
|
||||
// AutofillAgent deals with Autofill related communications between Blink and
|
||||
// the browser.
|
@ -1,896 +0,0 @@
|
||||
diff -up chromium-125.0.6422.60/base/allocator/partition_allocator/src/partition_alloc/starscan/stats_collector.h.system-libstdc++ chromium-125.0.6422.60/base/allocator/partition_allocator/src/partition_alloc/starscan/stats_collector.h
|
||||
--- chromium-125.0.6422.60/base/allocator/partition_allocator/src/partition_alloc/starscan/stats_collector.h.system-libstdc++ 2024-05-15 23:45:49.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/base/allocator/partition_allocator/src/partition_alloc/starscan/stats_collector.h 2024-05-19 09:07:38.199437617 +0200
|
||||
@@ -14,7 +14,7 @@
|
||||
#include <unordered_map>
|
||||
#include <utility>
|
||||
|
||||
-#include "partition_alloc/internal_allocator_forward.h"
|
||||
+#include "partition_alloc/internal_allocator.h"
|
||||
#include "partition_alloc/partition_alloc_base/threading/platform_thread.h"
|
||||
#include "partition_alloc/partition_alloc_base/time/time.h"
|
||||
#include "partition_alloc/partition_alloc_check.h"
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/lens/lens_overlay/lens_overlay_url_builder.h.system-libstdc++ chromium-125.0.6422.60/chrome/browser/lens/lens_overlay/lens_overlay_url_builder.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/lens/lens_overlay/lens_overlay_url_builder.h.system-libstdc++ 2024-05-15 23:46:01.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/lens/lens_overlay/lens_overlay_url_builder.h 2024-05-19 09:07:38.200437638 +0200
|
||||
@@ -5,6 +5,7 @@
|
||||
#ifndef CHROME_BROWSER_LENS_LENS_OVERLAY_LENS_OVERLAY_URL_BUILDER_H_
|
||||
#define CHROME_BROWSER_LENS_LENS_OVERLAY_LENS_OVERLAY_URL_BUILDER_H_
|
||||
|
||||
+#include <optional>
|
||||
#include <string>
|
||||
|
||||
#include "third_party/lens_server_proto/lens_overlay_cluster_info.pb.h"
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/sync/test/integration/product_specifications_helper.cc.system-libstdc++ chromium-125.0.6422.60/chrome/browser/sync/test/integration/product_specifications_helper.cc
|
||||
--- chromium-125.0.6422.60/chrome/browser/sync/test/integration/product_specifications_helper.cc.system-libstdc++ 2024-05-19 13:16:01.140442423 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/sync/test/integration/product_specifications_helper.cc 2024-05-19 13:16:38.029246015 +0200
|
||||
@@ -41,9 +41,9 @@ bool ProductSpecificationsChecker::IsExi
|
||||
bool ProductSpecificationsChecker::IsSpecificsAvailableAndEqual() {
|
||||
for (const ProductSpecificationsSet& product_specifications_set :
|
||||
service_->GetAllProductSpecifications()) {
|
||||
- std::vector<const GURL> specifics_urls;
|
||||
+ std::vector<GURL> specifics_urls;
|
||||
for (sync_pb::ComparisonData data : compare_specifics_->data()) {
|
||||
- specifics_urls.push_back(GURL(data.url()));
|
||||
+ specifics_urls.emplace_back(data.url());
|
||||
}
|
||||
if (product_specifications_set.uuid().AsLowercaseString() ==
|
||||
compare_specifics_->uuid() &&
|
||||
diff -up chromium-125.0.6422.60/chrome/browser/ui/tabs/tab_strip_model.h.system-libstdc++ chromium-125.0.6422.60/chrome/browser/ui/tabs/tab_strip_model.h
|
||||
--- chromium-125.0.6422.60/chrome/browser/ui/tabs/tab_strip_model.h.system-libstdc++ 2024-05-15 23:46:05.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/chrome/browser/ui/tabs/tab_strip_model.h 2024-05-19 09:07:38.200437638 +0200
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <memory>
|
||||
#include <optional>
|
||||
#include <string>
|
||||
+#include <variant>
|
||||
#include <vector>
|
||||
|
||||
#include "base/containers/span.h"
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service.cc.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service.cc
|
||||
--- chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service.cc.system-libstdc++ 2024-05-19 13:08:44.920571765 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service.cc 2024-05-19 13:11:08.451775188 +0200
|
||||
@@ -24,11 +24,11 @@ ProductSpecificationsService::GetSyncCon
|
||||
return bridge_->change_processor()->GetControllerDelegate();
|
||||
}
|
||||
|
||||
-const std::vector<const ProductSpecificationsSet>
|
||||
+const std::vector<ProductSpecificationsSet>
|
||||
ProductSpecificationsService::GetAllProductSpecifications() {
|
||||
- std::vector<const ProductSpecificationsSet> product_specifications;
|
||||
+ std::vector<ProductSpecificationsSet> product_specifications;
|
||||
for (auto& entry : bridge_->entries()) {
|
||||
- std::vector<const GURL> urls;
|
||||
+ std::vector<GURL> urls;
|
||||
for (auto& data : entry.second.data()) {
|
||||
urls.emplace_back(data.url());
|
||||
}
|
||||
@@ -43,7 +43,7 @@ ProductSpecificationsService::GetAllProd
|
||||
const std::optional<const ProductSpecificationsSet>
|
||||
ProductSpecificationsService::AddProductSpecificationsSet(
|
||||
const std::string& name,
|
||||
- const std::vector<const GURL>& urls) {
|
||||
+ const std::vector<GURL>& urls) {
|
||||
// TODO(crbug.com/332545064) add for a product specification set being added.
|
||||
std::optional<sync_pb::CompareSpecifics> specifics =
|
||||
bridge_->AddProductSpecifications(name, urls);
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service.h.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service.h
|
||||
--- chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service.h.system-libstdc++ 2024-05-15 23:46:11.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service.h 2024-05-19 09:07:38.201437659 +0200
|
||||
@@ -26,14 +26,13 @@ class ProductSpecificationsService : pub
|
||||
base::WeakPtr<syncer::ModelTypeControllerDelegate>
|
||||
GetSyncControllerDelegate();
|
||||
|
||||
- const std::vector<const ProductSpecificationsSet>
|
||||
- GetAllProductSpecifications();
|
||||
+ const std::vector<ProductSpecificationsSet> GetAllProductSpecifications();
|
||||
|
||||
// Add new product specifications set called |name| with product pages
|
||||
// corresponding to |urls|.
|
||||
const std::optional<const ProductSpecificationsSet>
|
||||
AddProductSpecificationsSet(const std::string& name,
|
||||
- const std::vector<const GURL>& urls);
|
||||
+ const std::vector<GURL>& urls);
|
||||
|
||||
// Deletes product specification set corresponding to identifier |uuid|.
|
||||
void DeleteProductSpecificationsSet(const std::string& uuid);
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service_unittest.cc.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service_unittest.cc
|
||||
--- chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service_unittest.cc.system-libstdc++ 2024-05-19 13:12:01.840028873 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_service_unittest.cc 2024-05-19 13:13:44.363473948 +0200
|
||||
@@ -82,9 +82,9 @@ void AddTestSpecifics(commerce::ProductS
|
||||
}
|
||||
|
||||
MATCHER_P(HasAllProductSpecs, compare_specifics, "") {
|
||||
- std::vector<const GURL> specifics_urls;
|
||||
+ std::vector<GURL> specifics_urls;
|
||||
for (const sync_pb::ComparisonData& data : compare_specifics.data()) {
|
||||
- specifics_urls.push_back(GURL(data.url()));
|
||||
+ specifics_urls.emplace_back(data.url());
|
||||
}
|
||||
return arg.uuid().AsLowercaseString() == compare_specifics.uuid() &&
|
||||
arg.creation_time() ==
|
||||
@@ -217,7 +217,7 @@ class ProductSpecificationsServiceTest :
|
||||
specifics.update_time_unix_epoch_micros()),
|
||||
specifications.update_time());
|
||||
EXPECT_EQ(specifics.name(), specifications.name());
|
||||
- std::vector<const GURL> urls;
|
||||
+ std::vector<GURL> urls;
|
||||
for (const sync_pb::ComparisonData& data : specifics.data()) {
|
||||
urls.emplace_back(data.url());
|
||||
}
|
||||
@@ -243,7 +243,7 @@ TEST_F(ProductSpecificationsServiceTest,
|
||||
for (const sync_pb::CompareSpecifics& specifics : kCompareSpecifics) {
|
||||
bridge()->AddCompareSpecifics(specifics);
|
||||
}
|
||||
- const std::vector<const ProductSpecificationsSet> specifications =
|
||||
+ const std::vector<ProductSpecificationsSet> specifications =
|
||||
service()->GetAllProductSpecifications();
|
||||
EXPECT_EQ(2u, specifications.size());
|
||||
for (uint64_t i = 0; i < specifications.size(); i++) {
|
||||
@@ -252,7 +252,7 @@ TEST_F(ProductSpecificationsServiceTest,
|
||||
}
|
||||
|
||||
TEST_F(ProductSpecificationsServiceTest, TestAddProductSpecificationsSuccess) {
|
||||
- std::vector<const GURL> expected_product_urls{GURL(kProductOneUrl),
|
||||
+ std::vector<GURL> expected_product_urls{GURL(kProductOneUrl),
|
||||
GURL(kProductTwoUrl)};
|
||||
EXPECT_CALL(*observer(),
|
||||
OnProductSpecificationsSetAdded(HasProductSpecsNameUrl(
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_set.cc.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_set.cc
|
||||
--- chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_set.cc.system-libstdc++ 2024-05-19 13:06:20.870445163 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_set.cc 2024-05-19 13:07:44.385278233 +0200
|
||||
@@ -12,7 +12,7 @@ ProductSpecificationsSet::ProductSpecifi
|
||||
const std::string& uuid,
|
||||
const int64_t creation_time_usec_since_epoch,
|
||||
const int64_t update_time_usec_since_epoch,
|
||||
- const std::vector<const GURL>& urls,
|
||||
+ const std::vector<GURL>& urls,
|
||||
const std::string& name)
|
||||
: uuid_(base::Uuid::ParseLowercase(uuid)),
|
||||
creation_time_(base::Time::FromMillisecondsSinceUnixEpoch(
|
||||
@@ -34,9 +34,9 @@ ProductSpecificationsSet::~ProductSpecif
|
||||
|
||||
ProductSpecificationsSet ProductSpecificationsSet::FromProto(
|
||||
const sync_pb::CompareSpecifics& specifics) {
|
||||
- std::vector<const GURL> urls;
|
||||
+ std::vector<GURL> urls;
|
||||
for (const sync_pb::ComparisonData& data : specifics.data()) {
|
||||
- urls.push_back(GURL(data.url()));
|
||||
+ urls.emplace_back(data.url());
|
||||
}
|
||||
return ProductSpecificationsSet(
|
||||
specifics.uuid(), specifics.creation_time_unix_epoch_micros(),
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_set.h.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_set.h
|
||||
--- chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_set.h.system-libstdc++ 2024-05-15 23:46:11.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_set.h 2024-05-19 09:07:38.201437659 +0200
|
||||
@@ -43,7 +43,7 @@ class ProductSpecificationsSet {
|
||||
ProductSpecificationsSet(const std::string& uuid,
|
||||
const int64_t creation_time_usec_since_epoch,
|
||||
const int64_t update_time_usec_since_epoch,
|
||||
- const std::vector<const GURL>& urls,
|
||||
+ const std::vector<GURL>& urls,
|
||||
const std::string& name);
|
||||
|
||||
ProductSpecificationsSet(const ProductSpecificationsSet&);
|
||||
@@ -61,7 +61,7 @@ class ProductSpecificationsSet {
|
||||
const base::Time& update_time() const { return update_time_; }
|
||||
|
||||
// Product urls for each item in the set
|
||||
- const std::vector<const GURL>& urls() const { return urls_; }
|
||||
+ const std::vector<GURL>& urls() const { return urls_; }
|
||||
|
||||
// Name of the set
|
||||
const std::string& name() const { return name_; }
|
||||
@@ -76,7 +76,7 @@ class ProductSpecificationsSet {
|
||||
const base::Uuid uuid_;
|
||||
const base::Time creation_time_;
|
||||
const base::Time update_time_;
|
||||
- const std::vector<const GURL> urls_;
|
||||
+ const std::vector<GURL> urls_;
|
||||
const std::string name_;
|
||||
};
|
||||
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge.cc.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge.cc
|
||||
--- chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge.cc.system-libstdc++ 2024-05-15 23:46:11.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge.cc 2024-05-19 09:07:38.201437659 +0200
|
||||
@@ -131,7 +131,7 @@ void ProductSpecificationsSyncBridge::Ge
|
||||
const std::optional<sync_pb::CompareSpecifics>
|
||||
ProductSpecificationsSyncBridge::AddProductSpecifications(
|
||||
const std::string& name,
|
||||
- const std::vector<const GURL>& urls) {
|
||||
+ const std::vector<GURL>& urls) {
|
||||
if (!change_processor()->IsTrackingMetadata()) {
|
||||
return std::nullopt;
|
||||
}
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge.h.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge.h
|
||||
--- chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge.h.system-libstdc++ 2024-05-15 23:46:11.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge.h 2024-05-19 09:07:38.201437659 +0200
|
||||
@@ -64,7 +64,7 @@ class ProductSpecificationsSyncBridge :
|
||||
|
||||
virtual const std::optional<sync_pb::CompareSpecifics>
|
||||
AddProductSpecifications(const std::string& name,
|
||||
- const std::vector<const GURL>& urls);
|
||||
+ const std::vector<GURL>& urls);
|
||||
|
||||
void DeleteProductSpecificationsSet(const std::string& uuid);
|
||||
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge_unittest.cc.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge_unittest.cc
|
||||
--- chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge_unittest.cc.system-libstdc++ 2024-05-15 23:46:11.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/product_specifications/product_specifications_sync_bridge_unittest.cc 2024-05-19 09:07:38.201437659 +0200
|
||||
@@ -178,7 +178,7 @@ class ProductSpecificationsSyncBridgeTes
|
||||
|
||||
std::optional<sync_pb::CompareSpecifics> AddProductSpecifications(
|
||||
const std::string& name,
|
||||
- const std::vector<const GURL> urls) {
|
||||
+ const std::vector<GURL> urls) {
|
||||
return bridge().AddProductSpecifications(name, urls);
|
||||
}
|
||||
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/shopping_service.cc.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/shopping_service.cc
|
||||
--- chromium-125.0.6422.60/components/commerce/core/shopping_service.cc.system-libstdc++ 2024-05-15 23:46:11.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/shopping_service.cc 2024-05-19 09:07:38.201437659 +0200
|
||||
@@ -1734,7 +1734,7 @@ void ShoppingService::GetProductIdentifi
|
||||
std::move(callback)));
|
||||
}
|
||||
|
||||
-const std::vector<const ProductSpecificationsSet>
|
||||
+const std::vector<ProductSpecificationsSet>
|
||||
ShoppingService::GetAllProductSpecificationSets() {
|
||||
return product_specifications_service_->GetAllProductSpecifications();
|
||||
}
|
||||
diff -up chromium-125.0.6422.60/components/commerce/core/shopping_service.h.system-libstdc++ chromium-125.0.6422.60/components/commerce/core/shopping_service.h
|
||||
--- chromium-125.0.6422.60/components/commerce/core/shopping_service.h.system-libstdc++ 2024-05-15 23:46:11.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/commerce/core/shopping_service.h 2024-05-19 09:07:38.201437659 +0200
|
||||
@@ -624,7 +624,7 @@ class ShoppingService : public KeyedServ
|
||||
UrlProductIdentifierTupleCallback callback);
|
||||
|
||||
// Return all ProductSpecificationsSets from ProductSpecificationsService.
|
||||
- virtual const std::vector<const ProductSpecificationsSet>
|
||||
+ virtual const std::vector<ProductSpecificationsSet>
|
||||
GetAllProductSpecificationSets();
|
||||
|
||||
// Updates the bookmark model used for sync (and shopping) if needed. Invoked
|
||||
diff -up chromium-125.0.6422.60/components/services/app_service/public/cpp/app_types.h.system-libstdc++ chromium-125.0.6422.60/components/services/app_service/public/cpp/app_types.h
|
||||
--- chromium-125.0.6422.60/components/services/app_service/public/cpp/app_types.h.system-libstdc++ 2024-05-15 23:46:14.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/services/app_service/public/cpp/app_types.h 2024-05-19 09:07:38.202437679 +0200
|
||||
@@ -5,6 +5,7 @@
|
||||
#ifndef COMPONENTS_SERVICES_APP_SERVICE_PUBLIC_CPP_APP_TYPES_H_
|
||||
#define COMPONENTS_SERVICES_APP_SERVICE_PUBLIC_CPP_APP_TYPES_H_
|
||||
|
||||
+#include <optional>
|
||||
#include "base/component_export.h"
|
||||
#include "components/services/app_service/public/cpp/macros.h"
|
||||
#include "components/services/app_service/public/protos/app_types.pb.h"
|
||||
diff -up chromium-125.0.6422.60/components/viz/service/display/surface_aggregator.cc.system-libstdc++ chromium-125.0.6422.60/components/viz/service/display/surface_aggregator.cc
|
||||
--- chromium-125.0.6422.60/components/viz/service/display/surface_aggregator.cc.system-libstdc++ 2024-05-15 23:46:17.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/components/viz/service/display/surface_aggregator.cc 2024-05-19 09:07:38.202437679 +0200
|
||||
@@ -2275,7 +2275,7 @@ AggregatedFrame SurfaceAggregator::Aggre
|
||||
root_surface_id_ = surface_id;
|
||||
|
||||
// Start recording new stats for this aggregation.
|
||||
- stats_.emplace();
|
||||
+ stats_ = AggregateStatistics{};
|
||||
|
||||
base::ElapsedTimer prewalk_timer;
|
||||
ResolvedFrameData* resolved_frame = GetResolvedFrame(surface_id);
|
||||
diff -up chromium-125.0.6422.60/content/browser/first_party_sets/first_party_sets_handler_database_helper.cc.system-libstdc++ chromium-125.0.6422.60/content/browser/first_party_sets/first_party_sets_handler_database_helper.cc
|
||||
--- chromium-125.0.6422.60/content/browser/first_party_sets/first_party_sets_handler_database_helper.cc.system-libstdc++ 2024-05-15 23:46:17.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/content/browser/first_party_sets/first_party_sets_handler_database_helper.cc 2024-05-19 09:07:38.202437679 +0200
|
||||
@@ -2,6 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
+#include <optional>
|
||||
#include "content/browser/first_party_sets/first_party_sets_handler_database_helper.h"
|
||||
|
||||
#include "base/containers/contains.h"
|
||||
diff -up chromium-125.0.6422.60/gpu/command_buffer/service/shared_image/shared_image_backing.h.system-libstdc++ chromium-125.0.6422.60/gpu/command_buffer/service/shared_image/shared_image_backing.h
|
||||
--- chromium-125.0.6422.60/gpu/command_buffer/service/shared_image/shared_image_backing.h.system-libstdc++ 2024-05-15 23:46:22.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/gpu/command_buffer/service/shared_image/shared_image_backing.h 2024-05-19 09:07:38.202437679 +0200
|
||||
@@ -111,6 +111,25 @@ using VideoDecodeDevice = Microsoft::WRL
|
||||
using VideoDecodeDevice = void*;
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
|
||||
+class ScopedWriteUMA {
|
||||
+ public:
|
||||
+ ScopedWriteUMA() = default;
|
||||
+
|
||||
+ ScopedWriteUMA(const ScopedWriteUMA&) = delete;
|
||||
+ ScopedWriteUMA& operator=(const ScopedWriteUMA&) = delete;
|
||||
+
|
||||
+ ~ScopedWriteUMA() {
|
||||
+ UMA_HISTOGRAM_BOOLEAN("GPU.SharedImage.ContentConsumed",
|
||||
+ content_consumed_);
|
||||
+ }
|
||||
+
|
||||
+ bool content_consumed() const { return content_consumed_; }
|
||||
+ void SetConsumed() { content_consumed_ = true; }
|
||||
+
|
||||
+ private:
|
||||
+ bool content_consumed_ = false;
|
||||
+};
|
||||
+
|
||||
// Represents the actual storage (GL texture, VkImage, GMB) for a SharedImage.
|
||||
// Should not be accessed directly, instead is accessed through a
|
||||
// SharedImageRepresentation.
|
||||
@@ -370,25 +389,6 @@ class GPU_GLES2_EXPORT SharedImageBackin
|
||||
mutable std::optional<base::Lock> lock_;
|
||||
|
||||
private:
|
||||
- class ScopedWriteUMA {
|
||||
- public:
|
||||
- ScopedWriteUMA() = default;
|
||||
-
|
||||
- ScopedWriteUMA(const ScopedWriteUMA&) = delete;
|
||||
- ScopedWriteUMA& operator=(const ScopedWriteUMA&) = delete;
|
||||
-
|
||||
- ~ScopedWriteUMA() {
|
||||
- UMA_HISTOGRAM_BOOLEAN("GPU.SharedImage.ContentConsumed",
|
||||
- content_consumed_);
|
||||
- }
|
||||
-
|
||||
- bool content_consumed() const { return content_consumed_; }
|
||||
- void SetConsumed() { content_consumed_ = true; }
|
||||
-
|
||||
- private:
|
||||
- bool content_consumed_ = false;
|
||||
- };
|
||||
-
|
||||
const Mailbox mailbox_;
|
||||
const viz::SharedImageFormat format_;
|
||||
const gfx::Size size_;
|
||||
diff -up chromium-125.0.6422.60/mojo/public/cpp/base/proto_wrapper.cc.system-libstdc++ chromium-125.0.6422.60/mojo/public/cpp/base/proto_wrapper.cc
|
||||
--- chromium-125.0.6422.60/mojo/public/cpp/base/proto_wrapper.cc.system-libstdc++ 2024-05-15 23:46:29.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/mojo/public/cpp/base/proto_wrapper.cc 2024-05-19 09:07:38.203437700 +0200
|
||||
@@ -57,7 +57,7 @@ bool ProtoWrapper::DeserializeToMessage(
|
||||
// Make an in-process copy here as protobuf is not designed to
|
||||
// safely parse data that might be changing underneath it.
|
||||
auto as_span = base::make_span(bytes_->data(), bytes_->size());
|
||||
- const std::vector<const uint8_t> copy(as_span.begin(), as_span.end());
|
||||
+ const std::vector<uint8_t> copy(as_span.begin(), as_span.end());
|
||||
return message.ParseFromArray(copy.data(), copy.size());
|
||||
}
|
||||
}
|
||||
diff -up chromium-125.0.6422.60/mojo/public/cpp/bindings/lib/bindings_internal.h.system-libstdc++ chromium-125.0.6422.60/mojo/public/cpp/bindings/lib/bindings_internal.h
|
||||
--- chromium-125.0.6422.60/mojo/public/cpp/bindings/lib/bindings_internal.h.system-libstdc++ 2024-05-15 23:46:29.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/mojo/public/cpp/bindings/lib/bindings_internal.h 2024-05-19 09:07:38.203437700 +0200
|
||||
@@ -8,6 +8,7 @@
|
||||
#include <stdint.h>
|
||||
|
||||
#include <functional>
|
||||
+#include <optional>
|
||||
#include <type_traits>
|
||||
#include <utility>
|
||||
|
||||
diff -up chromium-125.0.6422.60/mojo/public/cpp/bindings/lib/multiplex_router.cc.system-libstdc++ chromium-125.0.6422.60/mojo/public/cpp/bindings/lib/multiplex_router.cc
|
||||
--- chromium-125.0.6422.60/mojo/public/cpp/bindings/lib/multiplex_router.cc.system-libstdc++ 2024-05-15 23:46:29.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/mojo/public/cpp/bindings/lib/multiplex_router.cc 2024-05-19 09:07:38.203437700 +0200
|
||||
@@ -892,7 +892,7 @@ bool MultiplexRouter::ExclusiveSyncWaitF
|
||||
DCHECK(!exclusive_sync_wait_);
|
||||
|
||||
scoped_refptr<MultiplexRouter> keep_alive(this);
|
||||
- exclusive_sync_wait_.emplace();
|
||||
+ exclusive_sync_wait_ = ExclusiveSyncWaitInfo{};
|
||||
exclusive_sync_wait_->interface_id = interface_id;
|
||||
exclusive_sync_wait_->request_id = request_id;
|
||||
while (!exclusive_sync_wait_->finished) {
|
||||
diff -up chromium-125.0.6422.60/third_party/blink/common/interest_group/auction_config_mojom_traits.cc.system-libstdc++ chromium-125.0.6422.60/third_party/blink/common/interest_group/auction_config_mojom_traits.cc
|
||||
--- chromium-125.0.6422.60/third_party/blink/common/interest_group/auction_config_mojom_traits.cc.system-libstdc++ 2024-05-15 23:46:38.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/blink/common/interest_group/auction_config_mojom_traits.cc 2024-05-19 09:07:38.206437763 +0200
|
||||
@@ -218,8 +218,6 @@ bool StructTraits<blink::mojom::AuctionA
|
||||
!data.ReadAllBuyersPrioritySignals(&out->all_buyers_priority_signals) ||
|
||||
!data.ReadAuctionReportBuyerKeys(&out->auction_report_buyer_keys) ||
|
||||
!data.ReadAuctionReportBuyers(&out->auction_report_buyers) ||
|
||||
- !data.ReadAuctionReportBuyerDebugModeConfig(
|
||||
- &out->auction_report_buyer_debug_mode_config) ||
|
||||
!data.ReadRequiredSellerCapabilities(
|
||||
&out->required_seller_capabilities) ||
|
||||
!data.ReadRequestedSize(&out->requested_size) ||
|
||||
diff -up chromium-125.0.6422.60/third_party/blink/renderer/core/loader/history_item.cc.system-libstdc++ chromium-125.0.6422.60/third_party/blink/renderer/core/loader/history_item.cc
|
||||
--- chromium-125.0.6422.60/third_party/blink/renderer/core/loader/history_item.cc.system-libstdc++ 2024-05-15 23:46:41.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/blink/renderer/core/loader/history_item.cc 2024-05-19 09:07:38.209437825 +0200
|
||||
@@ -182,26 +182,26 @@ void HistoryItem::SetReferrerPolicy(netw
|
||||
|
||||
void HistoryItem::SetVisualViewportScrollOffset(const ScrollOffset& offset) {
|
||||
if (!view_state_)
|
||||
- view_state_ = std::make_optional<ViewState>();
|
||||
+ view_state_ = blink::HistoryItem::ViewState{};
|
||||
view_state_->visual_viewport_scroll_offset_ = offset;
|
||||
}
|
||||
|
||||
void HistoryItem::SetScrollOffset(const ScrollOffset& offset) {
|
||||
if (!view_state_)
|
||||
- view_state_ = std::make_optional<ViewState>();
|
||||
+ view_state_ = blink::HistoryItem::ViewState{};
|
||||
view_state_->scroll_offset_ = offset;
|
||||
}
|
||||
|
||||
void HistoryItem::SetPageScaleFactor(float scale_factor) {
|
||||
if (!view_state_)
|
||||
- view_state_ = std::make_optional<ViewState>();
|
||||
+ view_state_ = blink::HistoryItem::ViewState{};
|
||||
view_state_->page_scale_factor_ = scale_factor;
|
||||
}
|
||||
|
||||
void HistoryItem::SetScrollAnchorData(
|
||||
const ScrollAnchorData& scroll_anchor_data) {
|
||||
if (!view_state_)
|
||||
- view_state_ = std::make_optional<ViewState>();
|
||||
+ view_state_ = blink::HistoryItem::ViewState{};
|
||||
view_state_->scroll_anchor_data_ = scroll_anchor_data;
|
||||
}
|
||||
|
||||
diff -up chromium-125.0.6422.60/third_party/blink/renderer/core/paint/fragment_data_iterator.h.system-libstdc++ chromium-125.0.6422.60/third_party/blink/renderer/core/paint/fragment_data_iterator.h
|
||||
--- chromium-125.0.6422.60/third_party/blink/renderer/core/paint/fragment_data_iterator.h.system-libstdc++ 2024-05-15 23:46:41.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/blink/renderer/core/paint/fragment_data_iterator.h 2024-05-19 09:07:38.209437825 +0200
|
||||
@@ -22,7 +22,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 -up chromium-125.0.6422.60/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc.system-libstdc++ chromium-125.0.6422.60/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc
|
||||
--- chromium-125.0.6422.60/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc.system-libstdc++ 2024-05-15 23:46:42.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc 2024-05-19 09:07:38.210437846 +0200
|
||||
@@ -101,7 +101,7 @@ void MediaControlTimelineElement::Update
|
||||
void MediaControlTimelineElement::SetPosition(double current_time,
|
||||
bool suppress_aria) {
|
||||
if (is_live_ && !live_anchor_time_ && current_time != 0) {
|
||||
- live_anchor_time_.emplace();
|
||||
+ live_anchor_time_ = LiveAnchorTime{};
|
||||
live_anchor_time_->clock_time_ = base::TimeTicks::Now();
|
||||
live_anchor_time_->media_time_ = MediaElement().currentTime();
|
||||
}
|
||||
diff -up chromium-125.0.6422.60/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc.system-libstdc++ chromium-125.0.6422.60/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc
|
||||
--- chromium-125.0.6422.60/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc.system-libstdc++ 2024-05-15 23:46:42.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc 2024-05-19 09:07:38.210437846 +0200
|
||||
@@ -70,7 +70,7 @@ void GeometryMapperTransformCache::Updat
|
||||
to_2d_translation_root_ += translation;
|
||||
|
||||
if (parent.plane_root_transform_) {
|
||||
- plane_root_transform_.emplace();
|
||||
+ plane_root_transform_ = PlaneRootTransform{};
|
||||
plane_root_transform_->plane_root = parent.plane_root();
|
||||
plane_root_transform_->to_plane_root = parent.to_plane_root();
|
||||
plane_root_transform_->to_plane_root.Translate(translation.x(),
|
||||
@@ -98,7 +98,7 @@ void GeometryMapperTransformCache::Updat
|
||||
// as the 2d translation root.
|
||||
plane_root_transform_ = std::nullopt;
|
||||
} else {
|
||||
- plane_root_transform_.emplace();
|
||||
+ plane_root_transform_ = PlaneRootTransform{};
|
||||
plane_root_transform_->plane_root = parent.plane_root();
|
||||
plane_root_transform_->to_plane_root.MakeIdentity();
|
||||
parent.ApplyToPlaneRoot(plane_root_transform_->to_plane_root);
|
||||
@@ -140,7 +140,7 @@ void GeometryMapperTransformCache::Updat
|
||||
parent_node->UpdateScreenTransform();
|
||||
const auto& parent = parent_node->GetTransformCache();
|
||||
|
||||
- screen_transform_.emplace();
|
||||
+ screen_transform_ = ScreenTransform{};
|
||||
parent.ApplyToScreen(screen_transform_->to_screen);
|
||||
if (node.FlattensInheritedTransform())
|
||||
screen_transform_->to_screen.Flatten();
|
||||
diff -up chromium-125.0.6422.60/third_party/ruy/src/ruy/profiler/instrumentation.h.system-libstdc++ chromium-125.0.6422.60/third_party/ruy/src/ruy/profiler/instrumentation.h
|
||||
--- chromium-125.0.6422.60/third_party/ruy/src/ruy/profiler/instrumentation.h.system-libstdc++ 2024-05-15 23:47:49.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/ruy/src/ruy/profiler/instrumentation.h 2024-05-19 09:07:38.211437867 +0200
|
||||
@@ -19,6 +19,7 @@ limitations under the License.
|
||||
#ifdef RUY_PROFILER
|
||||
#include <cstdio>
|
||||
#include <mutex>
|
||||
+#include <string>
|
||||
#include <vector>
|
||||
#endif
|
||||
|
||||
diff -up chromium-125.0.6422.60/third_party/vulkan-deps/vulkan-utility-libraries/src/include/vulkan/utility/vk_small_containers.hpp.system-libstdc++ chromium-125.0.6422.60/third_party/vulkan-deps/vulkan-utility-libraries/src/include/vulkan/utility/vk_small_containers.hpp
|
||||
--- chromium-125.0.6422.60/third_party/vulkan-deps/vulkan-utility-libraries/src/include/vulkan/utility/vk_small_containers.hpp.system-libstdc++ 2024-05-15 23:48:05.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/vulkan-deps/vulkan-utility-libraries/src/include/vulkan/utility/vk_small_containers.hpp 2024-05-19 09:07:38.211437867 +0200
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
+#include <memory>
|
||||
#include <cassert>
|
||||
#include <unordered_map>
|
||||
#include <unordered_set>
|
||||
diff -up chromium-125.0.6422.60/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc.system-libstdc++ chromium-125.0.6422.60/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc
|
||||
--- chromium-125.0.6422.60/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc.system-libstdc++ 2024-05-15 23:48:09.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc 2024-05-19 09:07:38.212437888 +0200
|
||||
@@ -549,7 +549,7 @@ absl::optional<LossBasedBweV2::Config> L
|
||||
if (!enabled.Get()) {
|
||||
return config;
|
||||
}
|
||||
- config.emplace();
|
||||
+ config = Config{};
|
||||
config->bandwidth_rampup_upper_bound_factor =
|
||||
bandwidth_rampup_upper_bound_factor.Get();
|
||||
config->bandwidth_rampup_upper_bound_factor_in_hold =
|
||||
diff -up chromium-125.0.6422.60/ui/gfx/x/generated_protos/randr.cc.system-libstdc++ chromium-125.0.6422.60/ui/gfx/x/generated_protos/randr.cc
|
||||
--- chromium-125.0.6422.60/ui/gfx/x/generated_protos/randr.cc.system-libstdc++ 2024-05-15 23:47:33.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/ui/gfx/x/generated_protos/randr.cc 2024-05-19 09:07:38.212437888 +0200
|
||||
@@ -305,7 +305,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
// data
|
||||
auto data_expr = subCode;
|
||||
if (CaseEq(data_expr, RandR::Notify::CrtcChange)) {
|
||||
- data.cc.emplace();
|
||||
+ data.cc = RandR::NotifyEvent::Cc{};
|
||||
auto& timestamp = (*data.cc).timestamp;
|
||||
auto& window = (*data.cc).window;
|
||||
auto& crtc = (*data.cc).crtc;
|
||||
@@ -349,7 +349,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Read(&height, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::OutputChange)) {
|
||||
- data.oc.emplace();
|
||||
+ data.oc = RandR::NotifyEvent::Oc{};
|
||||
auto& timestamp = (*data.oc).timestamp;
|
||||
auto& config_timestamp = (*data.oc).config_timestamp;
|
||||
auto& window = (*data.oc).window;
|
||||
@@ -394,7 +394,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
subpixel_order = static_cast<Render::SubPixel>(tmp6);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::OutputProperty)) {
|
||||
- data.op.emplace();
|
||||
+ data.op = RandR::NotifyEvent::Op{};
|
||||
auto& window = (*data.op).window;
|
||||
auto& output = (*data.op).output;
|
||||
auto& atom = (*data.op).atom;
|
||||
@@ -422,7 +422,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Pad(&buf, 11);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::ProviderChange)) {
|
||||
- data.pc.emplace();
|
||||
+ data.pc = RandR::NotifyEvent::Pc{};
|
||||
auto& timestamp = (*data.pc).timestamp;
|
||||
auto& window = (*data.pc).window;
|
||||
auto& provider = (*data.pc).provider;
|
||||
@@ -440,7 +440,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Pad(&buf, 16);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::ProviderProperty)) {
|
||||
- data.pp.emplace();
|
||||
+ data.pp = RandR::NotifyEvent::Pp{};
|
||||
auto& window = (*data.pp).window;
|
||||
auto& provider = (*data.pp).provider;
|
||||
auto& atom = (*data.pp).atom;
|
||||
@@ -466,7 +466,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Pad(&buf, 11);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::ResourceChange)) {
|
||||
- data.rc.emplace();
|
||||
+ data.rc = RandR::NotifyEvent::Rc{};
|
||||
auto& timestamp = (*data.rc).timestamp;
|
||||
auto& window = (*data.rc).window;
|
||||
|
||||
@@ -480,7 +480,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Pad(&buf, 20);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::Lease)) {
|
||||
- data.lc.emplace();
|
||||
+ data.lc = RandR::NotifyEvent::Lc{};
|
||||
auto& timestamp = (*data.lc).timestamp;
|
||||
auto& window = (*data.lc).window;
|
||||
auto& lease = (*data.lc).lease;
|
||||
diff -up chromium-125.0.6422.60/ui/gfx/x/generated_protos/xinput.cc.system-libstdc++ chromium-125.0.6422.60/ui/gfx/x/generated_protos/xinput.cc
|
||||
--- chromium-125.0.6422.60/ui/gfx/x/generated_protos/xinput.cc.system-libstdc++ 2024-05-15 23:47:33.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/ui/gfx/x/generated_protos/xinput.cc 2024-05-19 09:07:38.216437971 +0200
|
||||
@@ -567,7 +567,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
// data
|
||||
auto data_expr = type;
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Key)) {
|
||||
- data.key.emplace();
|
||||
+ data.key = Input::DeviceClass::Key{};
|
||||
uint16_t num_keys{};
|
||||
auto& keys = (*data.key).keys;
|
||||
size_t keys_len = keys.size();
|
||||
@@ -583,7 +583,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Button)) {
|
||||
- data.button.emplace();
|
||||
+ data.button = Input::DeviceClass::Button{};
|
||||
uint16_t num_buttons{};
|
||||
auto& state = (*data.button).state;
|
||||
size_t state_len = state.size();
|
||||
@@ -608,7 +608,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Valuator)) {
|
||||
- data.valuator.emplace();
|
||||
+ data.valuator = Input::DeviceClass::Valuator{};
|
||||
auto& number = (*data.valuator).number;
|
||||
auto& label = (*data.valuator).label;
|
||||
auto& min = (*data.valuator).min;
|
||||
@@ -671,7 +671,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
Pad(&buf, 3);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Scroll)) {
|
||||
- data.scroll.emplace();
|
||||
+ data.scroll = Input::DeviceClass::Scroll{};
|
||||
auto& number = (*data.scroll).number;
|
||||
auto& scroll_type = (*data.scroll).scroll_type;
|
||||
auto& flags = (*data.scroll).flags;
|
||||
@@ -706,7 +706,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Touch)) {
|
||||
- data.touch.emplace();
|
||||
+ data.touch = Input::DeviceClass::Touch{};
|
||||
auto& mode = (*data.touch).mode;
|
||||
auto& num_touches = (*data.touch).num_touches;
|
||||
|
||||
@@ -719,7 +719,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
Read(&num_touches, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Gesture)) {
|
||||
- data.gesture.emplace();
|
||||
+ data.gesture = Input::DeviceClass::Gesture{};
|
||||
auto& num_touches = (*data.gesture).num_touches;
|
||||
|
||||
// num_touches
|
||||
@@ -2206,7 +2206,7 @@ std::unique_ptr<Input::ListInputDevicesR
|
||||
// info
|
||||
auto info_expr = class_id;
|
||||
if (CaseEq(info_expr, Input::InputClass::Key)) {
|
||||
- info.key.emplace();
|
||||
+ info.key = Input::InputInfo::Key{};
|
||||
auto& min_keycode = (*info.key).min_keycode;
|
||||
auto& max_keycode = (*info.key).max_keycode;
|
||||
auto& num_keys = (*info.key).num_keys;
|
||||
@@ -2224,14 +2224,14 @@ std::unique_ptr<Input::ListInputDevicesR
|
||||
Pad(&buf, 2);
|
||||
}
|
||||
if (CaseEq(info_expr, Input::InputClass::Button)) {
|
||||
- info.button.emplace();
|
||||
+ info.button = Input::InputInfo::Button{};
|
||||
auto& num_buttons = (*info.button).num_buttons;
|
||||
|
||||
// num_buttons
|
||||
Read(&num_buttons, &buf);
|
||||
}
|
||||
if (CaseEq(info_expr, Input::InputClass::Valuator)) {
|
||||
- info.valuator.emplace();
|
||||
+ info.valuator = Input::InputInfo::Valuator{};
|
||||
uint8_t axes_len{};
|
||||
auto& mode = (*info.valuator).mode;
|
||||
auto& motion_size = (*info.valuator).motion_size;
|
||||
@@ -3844,7 +3844,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
// data
|
||||
auto data_expr = class_id;
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Keyboard)) {
|
||||
- data.keyboard.emplace();
|
||||
+ data.keyboard = x11::Input::FeedbackState::Keyboard{};
|
||||
auto& pitch = (*data.keyboard).pitch;
|
||||
auto& duration = (*data.keyboard).duration;
|
||||
auto& led_mask = (*data.keyboard).led_mask;
|
||||
@@ -3886,7 +3886,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Pointer)) {
|
||||
- data.pointer.emplace();
|
||||
+ data.pointer = x11::Input::FeedbackState::Pointer{};
|
||||
auto& accel_num = (*data.pointer).accel_num;
|
||||
auto& accel_denom = (*data.pointer).accel_denom;
|
||||
auto& threshold = (*data.pointer).threshold;
|
||||
@@ -3904,7 +3904,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
Read(&threshold, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::String)) {
|
||||
- data.string.emplace();
|
||||
+ data.string = x11::Input::FeedbackState::String{};
|
||||
auto& max_symbols = (*data.string).max_symbols;
|
||||
uint16_t num_keysyms{};
|
||||
auto& keysyms = (*data.string).keysyms;
|
||||
@@ -3924,7 +3924,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Integer)) {
|
||||
- data.integer.emplace();
|
||||
+ data.integer = x11::Input::FeedbackState::Integer{};
|
||||
auto& resolution = (*data.integer).resolution;
|
||||
auto& min_value = (*data.integer).min_value;
|
||||
auto& max_value = (*data.integer).max_value;
|
||||
@@ -3939,7 +3939,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
Read(&max_value, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Led)) {
|
||||
- data.led.emplace();
|
||||
+ data.led = x11::Input::FeedbackState::Led{};
|
||||
auto& led_mask = (*data.led).led_mask;
|
||||
auto& led_values = (*data.led).led_values;
|
||||
|
||||
@@ -3950,7 +3950,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
Read(&led_values, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Bell)) {
|
||||
- data.bell.emplace();
|
||||
+ data.bell = x11::Input::FeedbackState::Bell{};
|
||||
auto& percent = (*data.bell).percent;
|
||||
auto& pitch = (*data.bell).pitch;
|
||||
auto& duration = (*data.bell).duration;
|
||||
@@ -4768,7 +4768,7 @@ std::unique_ptr<Input::QueryDeviceStateR
|
||||
// data
|
||||
auto data_expr = class_id;
|
||||
if (CaseEq(data_expr, Input::InputClass::Key)) {
|
||||
- data.key.emplace();
|
||||
+ data.key = x11::Input::InputState::Key{};
|
||||
auto& num_keys = (*data.key).num_keys;
|
||||
auto& keys = (*data.key).keys;
|
||||
size_t keys_len = keys.size();
|
||||
@@ -4786,7 +4786,7 @@ std::unique_ptr<Input::QueryDeviceStateR
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::InputClass::Button)) {
|
||||
- data.button.emplace();
|
||||
+ data.button = x11::Input::InputState::Button{};
|
||||
auto& num_buttons = (*data.button).num_buttons;
|
||||
auto& buttons = (*data.button).buttons;
|
||||
size_t buttons_len = buttons.size();
|
||||
@@ -4804,7 +4804,7 @@ std::unique_ptr<Input::QueryDeviceStateR
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::InputClass::Valuator)) {
|
||||
- data.valuator.emplace();
|
||||
+ data.valuator = x11::Input::InputState::Valuator{};
|
||||
uint8_t num_valuators{};
|
||||
auto& mode = (*data.valuator).mode;
|
||||
auto& valuators = (*data.valuator).valuators;
|
||||
@@ -5075,7 +5075,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
// data
|
||||
auto data_expr = control_id;
|
||||
if (CaseEq(data_expr, Input::DeviceControl::resolution)) {
|
||||
- data.resolution.emplace();
|
||||
+ data.resolution = x11::Input::DeviceState::Resolution{};
|
||||
uint32_t num_valuators{};
|
||||
auto& resolution_values = (*data.resolution).resolution_values;
|
||||
size_t resolution_values_len = resolution_values.size();
|
||||
@@ -5109,7 +5109,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceControl::abs_calib)) {
|
||||
- data.abs_calib.emplace();
|
||||
+ data.abs_calib = x11::Input::DeviceState::AbsCalib{};
|
||||
auto& min_x = (*data.abs_calib).min_x;
|
||||
auto& max_x = (*data.abs_calib).max_x;
|
||||
auto& min_y = (*data.abs_calib).min_y;
|
||||
@@ -5144,7 +5144,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
Read(&button_threshold, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceControl::core)) {
|
||||
- data.core.emplace();
|
||||
+ data.core = x11::Input::DeviceState::Core{};
|
||||
auto& status = (*data.core).status;
|
||||
auto& iscore = (*data.core).iscore;
|
||||
|
||||
@@ -5158,7 +5158,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
Pad(&buf, 2);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceControl::enable)) {
|
||||
- data.enable.emplace();
|
||||
+ data.enable = x11::Input::DeviceState::Enable{};
|
||||
auto& enable = (*data.enable).enable;
|
||||
|
||||
// enable
|
||||
@@ -5168,7 +5168,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
Pad(&buf, 3);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceControl::abs_area)) {
|
||||
- data.abs_area.emplace();
|
||||
+ data.abs_area = x11::Input::DeviceState::AbsArea{};
|
||||
auto& offset_x = (*data.abs_area).offset_x;
|
||||
auto& offset_y = (*data.abs_area).offset_y;
|
||||
auto& width = (*data.abs_area).width;
|
||||
@@ -6659,7 +6659,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
// data
|
||||
auto data_expr = type;
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Key)) {
|
||||
- data.key.emplace();
|
||||
+ data.key = Input::DeviceClass::Key{};
|
||||
uint16_t num_keys{};
|
||||
auto& keys = (*data.key).keys;
|
||||
size_t keys_len = keys.size();
|
||||
@@ -6675,7 +6675,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Button)) {
|
||||
- data.button.emplace();
|
||||
+ data.button = Input::DeviceClass::Button{};
|
||||
uint16_t num_buttons{};
|
||||
auto& state = (*data.button).state;
|
||||
size_t state_len = state.size();
|
||||
@@ -6700,7 +6700,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Valuator)) {
|
||||
- data.valuator.emplace();
|
||||
+ data.valuator = Input::DeviceClass::Valuator{};
|
||||
auto& number = (*data.valuator).number;
|
||||
auto& label = (*data.valuator).label;
|
||||
auto& min = (*data.valuator).min;
|
||||
@@ -6763,7 +6763,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
Pad(&buf, 3);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Scroll)) {
|
||||
- data.scroll.emplace();
|
||||
+ data.scroll = Input::DeviceClass::Scroll{};
|
||||
auto& number = (*data.scroll).number;
|
||||
auto& scroll_type = (*data.scroll).scroll_type;
|
||||
auto& flags = (*data.scroll).flags;
|
||||
@@ -6798,7 +6798,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Touch)) {
|
||||
- data.touch.emplace();
|
||||
+ data.touch = Input::DeviceClass::Touch{};
|
||||
auto& mode = (*data.touch).mode;
|
||||
auto& num_touches = (*data.touch).num_touches;
|
||||
|
||||
@@ -6811,7 +6811,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
Read(&num_touches, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Gesture)) {
|
||||
- data.gesture.emplace();
|
||||
+ data.gesture = Input::DeviceClass::Gesture{};
|
||||
auto& num_touches = (*data.gesture).num_touches;
|
||||
|
||||
// num_touches
|
||||
diff -up chromium-125.0.6422.60/ui/gfx/x/generated_protos/xkb.cc.system-libstdc++ chromium-125.0.6422.60/ui/gfx/x/generated_protos/xkb.cc
|
||||
--- chromium-125.0.6422.60/ui/gfx/x/generated_protos/xkb.cc.system-libstdc++ 2024-05-15 23:47:33.000000000 +0200
|
||||
+++ chromium-125.0.6422.60/ui/gfx/x/generated_protos/xkb.cc 2024-05-19 09:07:38.220438054 +0200
|
||||
@@ -2346,7 +2346,7 @@ std::unique_ptr<Xkb::GetMapReply> detail
|
||||
// map
|
||||
auto map_expr = present;
|
||||
if (CaseAnd(map_expr, Xkb::MapPart::KeyTypes)) {
|
||||
- map.types_rtrn.emplace();
|
||||
+ map.types_rtrn = std::vector<Xkb::KeyType>{};
|
||||
auto& types_rtrn = *map.types_rtrn;
|
||||
size_t types_rtrn_len = types_rtrn.size();
|
||||
|
||||
@@ -5276,7 +5276,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::Types) ||
|
||||
CaseAnd(replies_expr, Xkb::GBNDetail::ClientSymbols) ||
|
||||
CaseAnd(replies_expr, Xkb::GBNDetail::ServerSymbols)) {
|
||||
- replies.types.emplace();
|
||||
+ replies.types = Xkb::GetKbdByNameReply::Types{};
|
||||
auto& getmap_type = (*replies.types).getmap_type;
|
||||
auto& typeDeviceID = (*replies.types).typeDeviceID;
|
||||
auto& getmap_sequence = (*replies.types).getmap_sequence;
|
||||
@@ -5708,7 +5708,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
}
|
||||
}
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::CompatMap)) {
|
||||
- replies.compat_map.emplace();
|
||||
+ replies.compat_map = Xkb::GetKbdByNameReply::CompatMap{};
|
||||
auto& compatmap_type = (*replies.compat_map).compatmap_type;
|
||||
auto& compatDeviceID = (*replies.compat_map).compatDeviceID;
|
||||
auto& compatmap_sequence = (*replies.compat_map).compatmap_sequence;
|
||||
@@ -5832,7 +5832,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
}
|
||||
}
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::IndicatorMaps)) {
|
||||
- replies.indicator_maps.emplace();
|
||||
+ replies.indicator_maps = Xkb::GetKbdByNameReply::IndicatorMaps{};
|
||||
auto& indicatormap_type = (*replies.indicator_maps).indicatormap_type;
|
||||
auto& indicatorDeviceID = (*replies.indicator_maps).indicatorDeviceID;
|
||||
auto& indicatormap_sequence =
|
||||
@@ -5926,7 +5926,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
}
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::KeyNames) ||
|
||||
CaseAnd(replies_expr, Xkb::GBNDetail::OtherNames)) {
|
||||
- replies.key_names.emplace();
|
||||
+ replies.key_names = Xkb::GetKbdByNameReply::KeyNames{};
|
||||
auto& keyname_type = (*replies.key_names).keyname_type;
|
||||
auto& keyDeviceID = (*replies.key_names).keyDeviceID;
|
||||
auto& keyname_sequence = (*replies.key_names).keyname_sequence;
|
||||
@@ -6185,7 +6185,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
}
|
||||
}
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::Geometry)) {
|
||||
- replies.geometry.emplace();
|
||||
+ replies.geometry = Xkb::GetKbdByNameReply::Geometry{};
|
||||
auto& geometry_type = (*replies.geometry).geometry_type;
|
||||
auto& geometryDeviceID = (*replies.geometry).geometryDeviceID;
|
||||
auto& geometry_sequence = (*replies.geometry).geometry_sequence;
|
@ -0,0 +1,22 @@
|
||||
diff -up chromium-126.0.6478.26/build/config/compiler/BUILD.gn.clang16-buildflag chromium-126.0.6478.26/build/config/compiler/BUILD.gn
|
||||
--- chromium-126.0.6478.26/build/config/compiler/BUILD.gn.clang16-buildflag 2024-06-02 14:55:55.298242780 +0200
|
||||
+++ chromium-126.0.6478.26/build/config/compiler/BUILD.gn 2024-06-02 15:04:43.839882669 +0200
|
||||
@@ -1889,9 +1889,6 @@ config("default_warnings") {
|
||||
|
||||
# TODO(crbug.com/40286317): Evaluate and possibly enable.
|
||||
"-Wno-vla-extension",
|
||||
-
|
||||
- # TODO(crbug.com/40284799): Fix and re-enable.
|
||||
- "-Wno-thread-safety-reference-return",
|
||||
]
|
||||
|
||||
cflags_cc += [
|
||||
@@ -1902,7 +1899,7 @@ config("default_warnings") {
|
||||
if (!is_nacl) {
|
||||
cflags_cc += [
|
||||
# TODO(crbug.com/41486292): Fix and re-enable.
|
||||
- "-Wno-c++11-narrowing-const-reference",
|
||||
+ "-Wno-c++11-narrowing",
|
||||
]
|
||||
}
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
diff -up chromium-126.0.6478.26/build/config/compiler/BUILD.gn.clang16-disable-auto-upgrade-debug-info chromium-126.0.6478.26/build/config/compiler/BUILD.gn
|
||||
--- chromium-126.0.6478.26/build/config/compiler/BUILD.gn.clang16-disable-auto-upgrade-debug-info 2024-06-02 18:00:17.914641767 +0200
|
||||
+++ chromium-126.0.6478.26/build/config/compiler/BUILD.gn 2024-06-02 18:02:32.153544892 +0200
|
||||
@@ -780,7 +780,7 @@ config("compiler") {
|
||||
|
||||
# We only use one version of LLVM within a build so there's no need to
|
||||
# upgrade debug info, which can be expensive since it runs the verifier.
|
||||
- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
|
||||
+ ldflags += [ "" ]
|
||||
}
|
||||
|
||||
# TODO(crbug.com/335365324): Enable on other platforms.
|
@ -0,0 +1,681 @@
|
||||
diff -up chromium-126.0.6478.26/ash/style/ash_color_mixer_unittest.cc.mee chromium-126.0.6478.26/ash/style/ash_color_mixer_unittest.cc
|
||||
--- chromium-126.0.6478.26/ash/style/ash_color_mixer_unittest.cc.mee 2024-05-29 18:00:44.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ash/style/ash_color_mixer_unittest.cc 2024-06-03 16:22:10.549568854 +0200
|
||||
@@ -37,6 +37,9 @@ void InitializeColorProvider(const ui::C
|
||||
// Roughly mimics the ColorMixer configuration for Ash.
|
||||
ash::AddCrosStylesColorMixer(&color_provider, key);
|
||||
ash::AddAshColorMixer(&color_provider, key);
|
||||
+
|
||||
+ // Populates the color map with computed color values.
|
||||
+ color_provider.GenerateColorMap();
|
||||
}
|
||||
|
||||
// Initializes the `color_provider` with `seed_color` and the relevant
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/chrome_content_browser_client_browsertest.cc.mee chromium-126.0.6478.26/chrome/browser/chrome_content_browser_client_browsertest.cc
|
||||
--- chromium-126.0.6478.26/chrome/browser/chrome_content_browser_client_browsertest.cc.mee 2024-05-29 18:00:52.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/chrome_content_browser_client_browsertest.cc 2024-06-03 16:22:10.550568873 +0200
|
||||
@@ -602,6 +602,7 @@ class PrefersColorSchemeTest
|
||||
explicit MockColorProviderSource(bool is_dark) {
|
||||
key_.color_mode = is_dark ? ui::ColorProviderKey::ColorMode::kDark
|
||||
: ui::ColorProviderKey::ColorMode::kLight;
|
||||
+ provider_.GenerateColorMap();
|
||||
}
|
||||
MockColorProviderSource(const MockColorProviderSource&) = delete;
|
||||
MockColorProviderSource& operator=(const MockColorProviderSource&) = delete;
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/themes/browser_theme_pack_unittest.cc.mee chromium-126.0.6478.26/chrome/browser/themes/browser_theme_pack_unittest.cc
|
||||
--- chromium-126.0.6478.26/chrome/browser/themes/browser_theme_pack_unittest.cc.mee 2024-05-29 18:00:57.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/themes/browser_theme_pack_unittest.cc 2024-06-03 16:22:10.550568873 +0200
|
||||
@@ -750,6 +750,7 @@ TEST_F(BrowserThemePackTest, TestCreateC
|
||||
"omnibox_background": [120, 140, 160] })";
|
||||
LoadColorJSON(color_json);
|
||||
theme_pack().AddColorMixers(&provider, ui::ColorProviderKey());
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(SkColorSetRGB(0, 20, 40), provider.GetColor(kColorToolbar));
|
||||
EXPECT_EQ(SkColorSetRGB(60, 80, 100), provider.GetColor(kColorOmniboxText));
|
||||
EXPECT_EQ(SkColorSetRGB(120, 140, 160),
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/color/material_new_tab_page_color_mixer_unittest.cc.mee chromium-126.0.6478.26/chrome/browser/ui/color/material_new_tab_page_color_mixer_unittest.cc
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/color/material_new_tab_page_color_mixer_unittest.cc.mee 2024-05-29 18:00:58.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/color/material_new_tab_page_color_mixer_unittest.cc 2024-06-03 16:22:10.551568891 +0200
|
||||
@@ -26,6 +26,7 @@ class MaterialNewTabPageColorMixerTest :
|
||||
void AddMaterialColorMixers() {
|
||||
AddColorMixers(&color_provider_, color_provider_key_);
|
||||
AddChromeColorMixers(&color_provider_, color_provider_key_);
|
||||
+ color_provider_.GenerateColorMap();
|
||||
}
|
||||
|
||||
private:
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/color/new_tab_page_color_mixer_unittest.cc.mee chromium-126.0.6478.26/chrome/browser/ui/color/new_tab_page_color_mixer_unittest.cc
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/color/new_tab_page_color_mixer_unittest.cc.mee 2024-05-29 18:00:58.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/color/new_tab_page_color_mixer_unittest.cc 2024-06-03 16:22:10.551568891 +0200
|
||||
@@ -33,6 +33,7 @@ TEST(NewTabPageColorMixer, LightAndDarkT
|
||||
if (color_utils::IsDark(toolbar_color))
|
||||
key.color_mode = ui::ColorProviderKey::ColorMode::kDark;
|
||||
AddNewTabPageColorMixer(&provider, key);
|
||||
+ provider.GenerateColorMap();
|
||||
|
||||
EXPECT_EQ(provider.GetColor(kColorToolbar), toolbar_color);
|
||||
EXPECT_EQ(provider.GetColor(kColorNewTabPageBackground), toolbar_color);
|
||||
@@ -51,6 +52,7 @@ TEST(NewTabPageColorMixer, CustomColorCo
|
||||
key.custom_theme =
|
||||
base::WrapRefCounted(new CustomThemeSupplier(ThemeType::kAutogenerated));
|
||||
AddNewTabPageColorMixer(&provider, key);
|
||||
+ provider.GenerateColorMap();
|
||||
|
||||
EXPECT_EQ(provider.GetColor(kColorToolbar), gfx::kGoogleGreen300);
|
||||
EXPECT_EQ(provider.GetColor(kColorNewTabPageBackground),
|
||||
@@ -72,6 +74,7 @@ TEST(NewTabPageColorMixer, DefaultColorC
|
||||
key.custom_theme =
|
||||
base::WrapRefCounted(new CustomThemeSupplier(ThemeType::kAutogenerated));
|
||||
AddNewTabPageColorMixer(&provider, key);
|
||||
+ provider.GenerateColorMap();
|
||||
|
||||
EXPECT_EQ(provider.GetColor(kColorToolbar), kSampleToolbarColor);
|
||||
EXPECT_EQ(provider.GetColor(kColorNewTabPageBackground), kSampleToolbarColor);
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/color/tools/dump_colors.cc.mee chromium-126.0.6478.26/chrome/browser/ui/color/tools/dump_colors.cc
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/color/tools/dump_colors.cc.mee 2024-05-29 18:00:58.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/color/tools/dump_colors.cc 2024-06-03 16:22:10.551568891 +0200
|
||||
@@ -56,6 +56,7 @@ int main(int argc, const char* argv[]) {
|
||||
ui::AddColorMixers(provider, key);
|
||||
color::AddComponentsColorMixers(provider, key);
|
||||
AddChromeColorMixers(provider, key);
|
||||
+ provider->GenerateColorMap();
|
||||
};
|
||||
ui::ColorProvider light_provider, dark_provider, light_high_contrast_provider,
|
||||
dark_high_contrast_provider;
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc.mee chromium-126.0.6478.26/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc.mee 2024-05-29 18:00:59.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc 2024-06-03 16:22:10.552568911 +0200
|
||||
@@ -117,7 +117,7 @@ class MockLogoService : public search_pr
|
||||
|
||||
class MockColorProviderSource : public ui::ColorProviderSource {
|
||||
public:
|
||||
- MockColorProviderSource() = default;
|
||||
+ MockColorProviderSource() { color_provider_.GenerateColorMap(); }
|
||||
MockColorProviderSource(const MockColorProviderSource&) = delete;
|
||||
MockColorProviderSource& operator=(const MockColorProviderSource&) = delete;
|
||||
~MockColorProviderSource() override = default;
|
||||
diff -up chromium-126.0.6478.26/content/browser/web_contents/web_contents_impl_browsertest.cc.mee chromium-126.0.6478.26/content/browser/web_contents/web_contents_impl_browsertest.cc
|
||||
--- chromium-126.0.6478.26/content/browser/web_contents/web_contents_impl_browsertest.cc.mee 2024-05-29 18:01:13.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/content/browser/web_contents/web_contents_impl_browsertest.cc 2024-06-03 16:22:10.553568929 +0200
|
||||
@@ -6300,7 +6300,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsImplSt
|
||||
|
||||
class MockColorProviderSource : public ui::ColorProviderSource {
|
||||
public:
|
||||
- MockColorProviderSource() = default;
|
||||
+ MockColorProviderSource() { provider_.GenerateColorMap(); }
|
||||
MockColorProviderSource(const MockColorProviderSource&) = delete;
|
||||
MockColorProviderSource& operator=(const MockColorProviderSource&) = delete;
|
||||
~MockColorProviderSource() override = default;
|
||||
diff -up chromium-126.0.6478.26/content/browser/web_contents/web_contents_impl_unittest.cc.mee chromium-126.0.6478.26/content/browser/web_contents/web_contents_impl_unittest.cc
|
||||
--- chromium-126.0.6478.26/content/browser/web_contents/web_contents_impl_unittest.cc.mee 2024-05-29 18:01:13.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/content/browser/web_contents/web_contents_impl_unittest.cc 2024-06-03 16:22:10.554568949 +0200
|
||||
@@ -337,7 +337,7 @@ class MockPageBroadcast : public TestPag
|
||||
|
||||
class TestColorProviderSource : public ui::ColorProviderSource {
|
||||
public:
|
||||
- TestColorProviderSource() = default;
|
||||
+ TestColorProviderSource() { provider_.GenerateColorMap(); }
|
||||
|
||||
const ui::ColorProvider* GetColorProvider() const override {
|
||||
return &provider_;
|
||||
diff -up chromium-126.0.6478.26/content/public/test/render_view_test.cc.mee chromium-126.0.6478.26/content/public/test/render_view_test.cc
|
||||
--- chromium-126.0.6478.26/content/public/test/render_view_test.cc.mee 2024-05-29 18:01:14.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/content/public/test/render_view_test.cc 2024-06-03 16:22:10.554568949 +0200
|
||||
@@ -150,7 +150,7 @@ class FailingURLLoaderFactory : public n
|
||||
|
||||
class MockColorProviderSource : public ui::ColorProviderSource {
|
||||
public:
|
||||
- explicit MockColorProviderSource() = default;
|
||||
+ explicit MockColorProviderSource() { provider_.GenerateColorMap(); }
|
||||
MockColorProviderSource(const MockColorProviderSource&) = delete;
|
||||
MockColorProviderSource& operator=(const MockColorProviderSource&) = delete;
|
||||
~MockColorProviderSource() override = default;
|
||||
diff -up chromium-126.0.6478.26/extensions/browser/extension_host.cc.mee chromium-126.0.6478.26/extensions/browser/extension_host.cc
|
||||
--- chromium-126.0.6478.26/extensions/browser/extension_host.cc.mee 2024-05-29 18:01:22.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/extensions/browser/extension_host.cc 2024-06-03 16:22:10.555568967 +0200
|
||||
@@ -58,7 +58,7 @@ namespace {
|
||||
// the UI-less extension background page.
|
||||
class NoOpColorProviderSource : public ui::ColorProviderSource {
|
||||
public:
|
||||
- NoOpColorProviderSource() = default;
|
||||
+ NoOpColorProviderSource() { color_provider_.GenerateColorMap(); }
|
||||
NoOpColorProviderSource(const NoOpColorProviderSource&) = delete;
|
||||
NoOpColorProviderSource& operator=(const NoOpColorProviderSource&) = delete;
|
||||
~NoOpColorProviderSource() override = default;
|
||||
diff -up chromium-126.0.6478.26/third_party/blink/renderer/core/layout/layout_theme.cc.mee chromium-126.0.6478.26/third_party/blink/renderer/core/layout/layout_theme.cc
|
||||
--- chromium-126.0.6478.26/third_party/blink/renderer/core/layout/layout_theme.cc.mee 2024-05-29 18:01:39.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/renderer/core/layout/layout_theme.cc 2024-06-03 16:22:10.555568967 +0200
|
||||
@@ -677,7 +677,7 @@ Color LayoutTheme::SystemColorFromColorP
|
||||
CSSValueID css_value_id,
|
||||
mojom::blink::ColorScheme color_scheme,
|
||||
const ui::ColorProvider* color_provider) const {
|
||||
- CHECK(color_provider->HasMixers());
|
||||
+ CHECK(!color_provider->IsColorMapEmpty());
|
||||
SkColor system_theme_color;
|
||||
switch (css_value_id) {
|
||||
case CSSValueID::kActivetext:
|
||||
diff -up chromium-126.0.6478.26/ui/base/models/image_model_unittest.cc.mee chromium-126.0.6478.26/ui/base/models/image_model_unittest.cc
|
||||
--- chromium-126.0.6478.26/ui/base/models/image_model_unittest.cc.mee 2024-05-29 18:02:31.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/base/models/image_model_unittest.cc 2024-06-03 16:22:10.555568967 +0200
|
||||
@@ -224,6 +224,7 @@ TEST(ImageModelTest, ShouldRasterizeEmpt
|
||||
|
||||
TEST(ImageModelTest, ShouldRasterizeVectorIcon) {
|
||||
ui::ColorProvider color_provider;
|
||||
+ color_provider.GenerateColorMap();
|
||||
gfx::ImageSkia image_skia =
|
||||
ui::ImageModel::FromVectorIcon(vector_icons::kSyncIcon)
|
||||
.Rasterize(&color_provider);
|
||||
diff -up chromium-126.0.6478.26/ui/color/color_provider.cc.mee chromium-126.0.6478.26/ui/color/color_provider.cc
|
||||
--- chromium-126.0.6478.26/ui/color/color_provider.cc.mee 2024-06-03 16:03:15.596432761 +0200
|
||||
+++ chromium-126.0.6478.26/ui/color/color_provider.cc 2024-06-03 16:22:10.555568967 +0200
|
||||
@@ -4,7 +4,6 @@
|
||||
|
||||
#include "ui/color/color_provider.h"
|
||||
|
||||
-#include <forward_list>
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <utility>
|
||||
@@ -18,106 +17,6 @@
|
||||
|
||||
namespace ui {
|
||||
|
||||
-////////////////////////////////////////////////////////////////////////////////
|
||||
-// ColorProvider::ColorProviderInternal:
|
||||
-
|
||||
-class ColorProvider::ColorProviderInternal {
|
||||
- public:
|
||||
- using Mixers = std::forward_list<ColorMixer>;
|
||||
-
|
||||
- ColorProviderInternal() = default;
|
||||
- ColorProviderInternal(const ColorProviderInternal&) = delete;
|
||||
- ColorProviderInternal& operator=(const ColorProviderInternal&) = delete;
|
||||
- ~ColorProviderInternal() = default;
|
||||
-
|
||||
- ColorMixer& AddMixer() {
|
||||
- color_map_.clear();
|
||||
- mixers_.emplace_after(
|
||||
- first_postprocessing_mixer_,
|
||||
- base::BindRepeating([](const ColorMixer* mixer) { return mixer; },
|
||||
- GetLastNonPostprocessingMixer()),
|
||||
- base::BindRepeating(&ColorProvider::ColorProviderInternal::
|
||||
- GetLastNonPostprocessingMixer,
|
||||
- base::Unretained(this)));
|
||||
-
|
||||
- return *std::next(first_postprocessing_mixer_, 1);
|
||||
- }
|
||||
-
|
||||
- ColorMixer& AddPostprocessingMixer() {
|
||||
- color_map_.clear();
|
||||
- if (first_postprocessing_mixer_ == mixers_.before_begin()) {
|
||||
- // The first postprocessing mixer points to the last regular mixer.
|
||||
- auto previous_mixer_getter = base::BindRepeating(
|
||||
- &ColorProvider::ColorProviderInternal::GetLastNonPostprocessingMixer,
|
||||
- base::Unretained(this));
|
||||
- mixers_.emplace_front(previous_mixer_getter, previous_mixer_getter);
|
||||
- first_postprocessing_mixer_ = mixers_.begin();
|
||||
- } else {
|
||||
- // Other postprocessing mixers point to the next postprocessing mixer.
|
||||
- auto previous_mixer_getter =
|
||||
- base::BindRepeating([](const ColorMixer* mixer) { return mixer; },
|
||||
- base::Unretained(&mixers_.front()));
|
||||
- mixers_.emplace_front(previous_mixer_getter, previous_mixer_getter);
|
||||
- }
|
||||
- return mixers_.front();
|
||||
- }
|
||||
-
|
||||
- SkColor GetColor(ColorId id) const {
|
||||
- auto i = color_map_.find(id);
|
||||
- if (i == color_map_.end()) {
|
||||
- if (mixers_.empty()) {
|
||||
- DVLOG(2) << "ColorProvider::GetColor: No mixers defined!";
|
||||
- return gfx::kPlaceholderColor;
|
||||
- }
|
||||
- DVLOG(2) << "ColorProvider::GetColor: Computing color for ColorId: "
|
||||
- << ColorIdName(id);
|
||||
- const SkColor color = mixers_.front().GetResultColor(id);
|
||||
- if (color == gfx::kPlaceholderColor) {
|
||||
- return gfx::kPlaceholderColor;
|
||||
- }
|
||||
- i = color_map_.insert({id, color}).first;
|
||||
- }
|
||||
-
|
||||
- DVLOG(2) << "ColorProvider::GetColor: ColorId: " << ColorIdName(id)
|
||||
- << " Value: " << SkColorName(i->second);
|
||||
- return i->second;
|
||||
- }
|
||||
-
|
||||
- const ColorMixer* GetLastNonPostprocessingMixer() const {
|
||||
- const auto it = std::next(first_postprocessing_mixer_, 1);
|
||||
- return (it == mixers_.cend()) ? nullptr : &(*it);
|
||||
- }
|
||||
-
|
||||
- bool HasMixers() const { return !mixers_.empty(); }
|
||||
-
|
||||
- void SetColorForTesting(ColorId id, SkColor color) { color_map_[id] = color; }
|
||||
-
|
||||
- void GenerateColorMapForTesting() {
|
||||
- for (const auto& mixer : mixers_) {
|
||||
- const auto mixer_color_ids = mixer.GetDefinedColorIds();
|
||||
- for (const auto color_id : mixer_color_ids) {
|
||||
- GetColor(color_id);
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- const ColorProvider::ColorMap& color_map_for_testing() { return color_map_; }
|
||||
-
|
||||
- private:
|
||||
- // The entire color pipeline, in reverse order (that is, the "last" mixer is
|
||||
- // at the front).
|
||||
- Mixers mixers_;
|
||||
-
|
||||
- // The first mixer in the chain that is a "postprocessing" mixer.
|
||||
- Mixers::iterator first_postprocessing_mixer_ = mixers_.before_begin();
|
||||
-
|
||||
- // A cached map of ColorId => SkColor mappings for this provider.
|
||||
- mutable ColorMap color_map_;
|
||||
-};
|
||||
-
|
||||
-////////////////////////////////////////////////////////////////////////////////
|
||||
-// ColorProvider:
|
||||
-
|
||||
ColorProvider::ColorProvider() = default;
|
||||
|
||||
ColorProvider::ColorProvider(ColorProvider&&) = default;
|
||||
@@ -127,31 +26,96 @@ ColorProvider& ColorProvider::operator=(
|
||||
ColorProvider::~ColorProvider() = default;
|
||||
|
||||
ColorMixer& ColorProvider::AddMixer() {
|
||||
- return internal_->AddMixer();
|
||||
+ DCHECK(!color_map_);
|
||||
+
|
||||
+ mixers_.emplace_after(
|
||||
+ first_postprocessing_mixer_,
|
||||
+ base::BindRepeating([](const ColorMixer* mixer) { return mixer; },
|
||||
+ GetLastNonPostprocessingMixer()),
|
||||
+ base::BindRepeating(&ColorProvider::GetLastNonPostprocessingMixer,
|
||||
+ base::Unretained(this)));
|
||||
+
|
||||
+ return *std::next(first_postprocessing_mixer_, 1);
|
||||
}
|
||||
|
||||
ColorMixer& ColorProvider::AddPostprocessingMixer() {
|
||||
- return internal_->AddPostprocessingMixer();
|
||||
+ DCHECK(!color_map_);
|
||||
+
|
||||
+ if (first_postprocessing_mixer_ == mixers_.before_begin()) {
|
||||
+ // The first postprocessing mixer points to the last regular mixer.
|
||||
+ auto previous_mixer_getter = base::BindRepeating(
|
||||
+ &ColorProvider::GetLastNonPostprocessingMixer, base::Unretained(this));
|
||||
+ mixers_.emplace_front(previous_mixer_getter, previous_mixer_getter);
|
||||
+ first_postprocessing_mixer_ = mixers_.begin();
|
||||
+ } else {
|
||||
+ // Other postprocessing mixers point to the next postprocessing mixer.
|
||||
+ auto previous_mixer_getter =
|
||||
+ base::BindRepeating([](const ColorMixer* mixer) { return mixer; },
|
||||
+ base::Unretained(&mixers_.front()));
|
||||
+ mixers_.emplace_front(previous_mixer_getter, previous_mixer_getter);
|
||||
+ }
|
||||
+ return mixers_.front();
|
||||
}
|
||||
|
||||
SkColor ColorProvider::GetColor(ColorId id) const {
|
||||
- return internal_->GetColor(id);
|
||||
-}
|
||||
+ CHECK(color_map_);
|
||||
+ auto i = color_map_->find(id);
|
||||
+ return i == color_map_->end() ? gfx::kPlaceholderColor : i->second;
|
||||
+}
|
||||
+
|
||||
+void ColorProvider::GenerateColorMap() {
|
||||
+ // This should only be called to generate the `color_map_` once.
|
||||
+ DCHECK(!color_map_);
|
||||
+
|
||||
+ if (mixers_.empty())
|
||||
+ DVLOG(2) << "ColorProvider::GenerateColorMap: No mixers defined!";
|
||||
+
|
||||
+ // Iterate over associated mixers and extract the ColorIds defined for this
|
||||
+ // provider.
|
||||
+ std::set<ColorId> color_ids;
|
||||
+ for (const auto& mixer : mixers_) {
|
||||
+ const auto mixer_color_ids = mixer.GetDefinedColorIds();
|
||||
+ color_ids.insert(mixer_color_ids.begin(), mixer_color_ids.end());
|
||||
+ }
|
||||
+
|
||||
+ // Iterate through all defined ColorIds and seed the `color_map` with the
|
||||
+ // computed values. Use a std::map rather than a base::flat_map since it has
|
||||
+ // frequent inserts and could grow very large.
|
||||
+ std::map<ColorId, SkColor> color_map;
|
||||
+ for (const auto& color_id : color_ids) {
|
||||
+ SkColor resulting_color = mixers_.front().GetResultColor(color_id);
|
||||
+ DVLOG(2) << "GenerateColorMap:"
|
||||
+ << " Color Id: " << ColorIdName(color_id)
|
||||
+ << " Resulting Color: " << SkColorName(resulting_color);
|
||||
+ color_map.insert({color_id, resulting_color});
|
||||
+ }
|
||||
+
|
||||
+ // Construct the color_map_.
|
||||
+ color_map_ = ColorMap(color_map.begin(), color_map.end());
|
||||
|
||||
-bool ColorProvider::HasMixers() const {
|
||||
- return internal_->HasMixers();
|
||||
+ // Clear away all associated mixers as these are no longer needed.
|
||||
+ mixers_.clear();
|
||||
+ first_postprocessing_mixer_ = mixers_.before_begin();
|
||||
}
|
||||
|
||||
-void ColorProvider::SetColorForTesting(ColorId id, SkColor color) {
|
||||
- internal_->SetColorForTesting(id, color); // IN-TEST
|
||||
+bool ColorProvider::IsColorMapEmpty() const {
|
||||
+ DCHECK(color_map_);
|
||||
+ return color_map_->empty();
|
||||
}
|
||||
|
||||
-void ColorProvider::GenerateColorMapForTesting() {
|
||||
- internal_->GenerateColorMapForTesting(); // IN-TEST
|
||||
+void ColorProvider::SetColorForTesting(ColorId id, SkColor color) {
|
||||
+ if (color_map_) {
|
||||
+ (*color_map_)[id] = color;
|
||||
+ } else {
|
||||
+ if (mixers_.empty())
|
||||
+ AddMixer();
|
||||
+ (*std::next(first_postprocessing_mixer_, 1))[id] = {color};
|
||||
+ }
|
||||
}
|
||||
|
||||
-const ColorProvider::ColorMap& ColorProvider::color_map_for_testing() {
|
||||
- return internal_->color_map_for_testing(); // IN-TEST
|
||||
+const ColorMixer* ColorProvider::GetLastNonPostprocessingMixer() const {
|
||||
+ const auto it = std::next(first_postprocessing_mixer_, 1);
|
||||
+ return (it == mixers_.cend()) ? nullptr : &(*it);
|
||||
}
|
||||
|
||||
} // namespace ui
|
||||
diff -up chromium-126.0.6478.26/ui/color/color_provider.h.mee chromium-126.0.6478.26/ui/color/color_provider.h
|
||||
--- chromium-126.0.6478.26/ui/color/color_provider.h.mee 2024-06-03 16:13:48.739166275 +0200
|
||||
+++ chromium-126.0.6478.26/ui/color/color_provider.h 2024-06-03 16:22:10.555568967 +0200
|
||||
@@ -5,11 +5,12 @@
|
||||
#ifndef UI_COLOR_COLOR_PROVIDER_H_
|
||||
#define UI_COLOR_COLOR_PROVIDER_H_
|
||||
|
||||
-#include <map>
|
||||
+#include <forward_list>
|
||||
#include <memory>
|
||||
#include <optional>
|
||||
|
||||
#include "base/component_export.h"
|
||||
+#include "base/containers/flat_map.h"
|
||||
#include "third_party/skia/include/core/SkColor.h"
|
||||
#include "ui/color/color_id.h"
|
||||
#include "ui/color/color_mixer.h"
|
||||
@@ -24,7 +25,7 @@ namespace ui {
|
||||
// TODO(pkasting): Figure out ownership model and lifetime.
|
||||
class COMPONENT_EXPORT(COLOR) ColorProvider {
|
||||
public:
|
||||
- using ColorMap = std::map<ColorId, SkColor>;
|
||||
+ using ColorMap = base::flat_map<ColorId, SkColor>;
|
||||
|
||||
ColorProvider();
|
||||
ColorProvider(const ColorProvider&) = delete;
|
||||
@@ -48,25 +49,39 @@ class COMPONENT_EXPORT(COLOR) ColorProvi
|
||||
// |id|.
|
||||
SkColor GetColor(ColorId id) const;
|
||||
|
||||
- // Returns true if mixers is not empty. It's the case for some browser
|
||||
+ // Generates the `color_map_` used by this provider for all ColorIds defined
|
||||
+ // by attached mixers. After the map is generated attached mixers and their
|
||||
+ // associated objects are discarded. Mixers should not be added to the
|
||||
+ // provider after this has been called.
|
||||
+ void GenerateColorMap();
|
||||
+
|
||||
+ // Returns true if the color_map_ is empty. It's the case for some browser
|
||||
// tests that run in single process mode but access colors that are
|
||||
// initialized on renderer process launch, for example, controls in
|
||||
// NaiveThemeBase and its children classes. Please see more details:
|
||||
// https://crbug.com/1376775.
|
||||
- bool HasMixers() const;
|
||||
+ bool IsColorMapEmpty() const;
|
||||
|
||||
void SetColorForTesting(ColorId id, SkColor color);
|
||||
- void GenerateColorMapForTesting();
|
||||
- const ColorMap& color_map_for_testing();
|
||||
+ const ColorMap& color_map_for_testing() { return *color_map_; }
|
||||
|
||||
private:
|
||||
- // ColorProviderInternal provides the actual implementation of ColorProvider.
|
||||
- // It's non-movable and non-copyable so that ColorMixer's callbacks can safely
|
||||
- // bind to it.
|
||||
- class ColorProviderInternal;
|
||||
+ using Mixers = std::forward_list<ColorMixer>;
|
||||
|
||||
- std::unique_ptr<ColorProviderInternal> internal_ =
|
||||
- std::make_unique<ColorProviderInternal>();
|
||||
+ // Returns the last mixer in the chain that is not a "postprocessing" mixer,
|
||||
+ // or nullptr.
|
||||
+ const ColorMixer* GetLastNonPostprocessingMixer() const;
|
||||
+
|
||||
+ // The entire color pipeline, in reverse order (that is, the "last" mixer is
|
||||
+ // at the front).
|
||||
+ Mixers mixers_;
|
||||
+
|
||||
+ // The first mixer in the chain that is a "postprocessing" mixer.
|
||||
+ Mixers::iterator first_postprocessing_mixer_ = mixers_.before_begin();
|
||||
+
|
||||
+ // A cached map of ColorId => SkColor mappings for this provider. This will be
|
||||
+ // generated in the call to `GenerateColorMap()`.
|
||||
+ std::optional<ColorMap> color_map_;
|
||||
};
|
||||
|
||||
} // namespace ui
|
||||
diff -up chromium-126.0.6478.26/ui/color/color_provider_manager.cc.mee chromium-126.0.6478.26/ui/color/color_provider_manager.cc
|
||||
--- chromium-126.0.6478.26/ui/color/color_provider_manager.cc.mee 2024-05-29 18:02:31.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/color/color_provider_manager.cc 2024-06-03 16:22:10.556568986 +0200
|
||||
@@ -109,6 +109,7 @@ ColorProvider* ColorProviderManager::Get
|
||||
if (!initializer_list_->empty())
|
||||
initializer_list_->Notify(provider.get(), key);
|
||||
|
||||
+ provider->GenerateColorMap();
|
||||
RecordTimeSpentInitializingColorProvider(timer.Elapsed());
|
||||
++num_providers_initialized_;
|
||||
|
||||
diff -up chromium-126.0.6478.26/ui/color/color_provider_unittest.cc.mee chromium-126.0.6478.26/ui/color/color_provider_unittest.cc
|
||||
--- chromium-126.0.6478.26/ui/color/color_provider_unittest.cc.mee 2024-05-29 18:02:31.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/color/color_provider_unittest.cc 2024-06-03 16:22:10.556568986 +0200
|
||||
@@ -17,6 +17,7 @@ namespace {
|
||||
// Tests that when there are no mixers, GetColor() returns a placeholder value.
|
||||
TEST(ColorProviderTest, GetColorNoMixers) {
|
||||
ColorProvider provider;
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(gfx::kPlaceholderColor, provider.GetColor(kColorTest0));
|
||||
}
|
||||
|
||||
@@ -25,6 +26,7 @@ TEST(ColorProviderTest, GetColorNoMixers
|
||||
TEST(ColorProviderTest, SingleMixer) {
|
||||
ColorProvider provider;
|
||||
provider.AddMixer()[kColorTest0] = {SK_ColorGREEN};
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(SK_ColorGREEN, provider.GetColor(kColorTest0));
|
||||
EXPECT_EQ(gfx::kPlaceholderColor, provider.GetColor(kColorTest1));
|
||||
}
|
||||
@@ -35,6 +37,7 @@ TEST(ColorProviderTest, NonOverlappingMi
|
||||
ColorProvider provider;
|
||||
provider.AddMixer()[kColorTest0] = {SK_ColorGREEN};
|
||||
provider.AddMixer()[kColorTest1] = {SK_ColorRED};
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(SK_ColorGREEN, provider.GetColor(kColorTest0));
|
||||
EXPECT_EQ(SK_ColorRED, provider.GetColor(kColorTest1));
|
||||
}
|
||||
@@ -45,6 +48,7 @@ TEST(ColorProviderTest, OverlappingMixer
|
||||
ColorProvider provider;
|
||||
provider.AddMixer()[kColorTest0] = {SK_ColorGREEN};
|
||||
provider.AddMixer()[kColorTest0] = {SK_ColorRED};
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(SK_ColorRED, provider.GetColor(kColorTest0));
|
||||
}
|
||||
|
||||
@@ -55,6 +59,7 @@ TEST(ColorProviderTest, WithProcessing)
|
||||
provider.AddMixer()[kColorTest0] = {SK_ColorBLACK};
|
||||
provider.AddPostprocessingMixer()[kColorTest0] =
|
||||
GetColorWithMaxContrast(FromTransformInput());
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(SK_ColorWHITE, provider.GetColor(kColorTest0));
|
||||
}
|
||||
|
||||
@@ -65,6 +70,7 @@ TEST(ColorProviderTest, WithProcessingAd
|
||||
provider.AddPostprocessingMixer()[kColorTest0] =
|
||||
GetColorWithMaxContrast(FromTransformInput());
|
||||
provider.AddMixer()[kColorTest0] = {SK_ColorBLACK};
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(SK_ColorWHITE, provider.GetColor(kColorTest0));
|
||||
}
|
||||
|
||||
@@ -76,6 +82,7 @@ TEST(ColorProviderTest, Redefinition) {
|
||||
mixer0[kColorTest0] = {SK_ColorBLACK};
|
||||
mixer0[kColorTest1] = AlphaBlend(SK_ColorRED, kColorTest0, 0x01);
|
||||
provider.AddMixer()[kColorTest0] = {SK_ColorWHITE};
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(SK_ColorWHITE, provider.GetColor(kColorTest0));
|
||||
EXPECT_FALSE(color_utils::IsDark(provider.GetColor(kColorTest1)));
|
||||
}
|
||||
@@ -90,6 +97,7 @@ TEST(ColorProviderTest, RedefinitionWith
|
||||
provider.AddMixer()[kColorTest0] = {SK_ColorWHITE};
|
||||
provider.AddPostprocessingMixer()[kColorTest0] =
|
||||
GetColorWithMaxContrast(FromTransformInput());
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_NE(SK_ColorWHITE, provider.GetColor(kColorTest0));
|
||||
EXPECT_FALSE(color_utils::IsDark(provider.GetColor(kColorTest1)));
|
||||
}
|
||||
@@ -97,6 +105,7 @@ TEST(ColorProviderTest, RedefinitionWith
|
||||
TEST(ColorProviderTest, SetColorForTesting) {
|
||||
ColorProvider provider;
|
||||
provider.SetColorForTesting(kColorTest0, SK_ColorGREEN);
|
||||
+ provider.GenerateColorMap();
|
||||
EXPECT_EQ(SK_ColorGREEN, provider.GetColor(kColorTest0));
|
||||
EXPECT_EQ(gfx::kPlaceholderColor, provider.GetColor(kColorTest1));
|
||||
provider.SetColorForTesting(kColorTest1, SK_ColorBLUE);
|
||||
diff -up chromium-126.0.6478.26/ui/color/color_provider_utils.cc.mee chromium-126.0.6478.26/ui/color/color_provider_utils.cc
|
||||
--- chromium-126.0.6478.26/ui/color/color_provider_utils.cc.mee 2024-05-29 18:02:31.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/color/color_provider_utils.cc 2024-06-03 16:22:10.556568986 +0200
|
||||
@@ -367,6 +367,7 @@ ColorProvider CreateColorProviderFromRen
|
||||
|
||||
for (const auto& table : kRendererColorIdMap)
|
||||
mixer[table.color_id] = {renderer_color_map.at(table.renderer_color_id)};
|
||||
+ color_provider.GenerateColorMap();
|
||||
|
||||
return color_provider;
|
||||
}
|
||||
@@ -425,6 +426,7 @@ ColorProvider CreateEmulatedForcedColors
|
||||
mixer[kColorSeparator] = {kColorMidground};
|
||||
CompleteDefaultNonWebNativeRendererColorIdsDefinition(mixer);
|
||||
|
||||
+ color_provider.GenerateColorMap();
|
||||
return color_provider;
|
||||
}
|
||||
|
||||
@@ -479,6 +481,7 @@ ColorProvider CreateEmulatedForcedColors
|
||||
mixer[kColorWebNativeControlSliderHovered] = {SK_ColorCYAN};
|
||||
mixer[kColorWebNativeControlSliderPressed] = {SK_ColorCYAN};
|
||||
|
||||
+ color_provider.GenerateColorMap();
|
||||
return color_provider;
|
||||
}
|
||||
|
||||
@@ -652,6 +655,7 @@ ColorProvider COMPONENT_EXPORT(COLOR)
|
||||
SkColorSetRGB(0x37, 0x93, 0xFF)};
|
||||
}
|
||||
|
||||
+ color_provider.GenerateColorMap();
|
||||
return color_provider;
|
||||
}
|
||||
|
||||
diff -up chromium-126.0.6478.26/ui/color/color_provider_utils_unittest.cc.mee chromium-126.0.6478.26/ui/color/color_provider_utils_unittest.cc
|
||||
--- chromium-126.0.6478.26/ui/color/color_provider_utils_unittest.cc.mee 2024-05-29 18:02:31.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/color/color_provider_utils_unittest.cc 2024-06-03 16:22:10.556568986 +0200
|
||||
@@ -49,6 +49,7 @@ TEST_F(ColorProviderUtilsTest, RendererC
|
||||
ui::ColorMixer& mixer = color_provider.AddMixer();
|
||||
for (int i = ui::kUiColorsStart + 1; i < ui::kUiColorsEnd; ++i)
|
||||
mixer[i] = {static_cast<SkColor>(i)};
|
||||
+ color_provider.GenerateColorMap();
|
||||
|
||||
// The size of the RendererColorMap should match number of defined
|
||||
// RendererColorIds.
|
||||
@@ -60,7 +61,6 @@ TEST_F(ColorProviderUtilsTest, RendererC
|
||||
// also match the number of defined RendererColorIds.
|
||||
auto new_color_provider =
|
||||
ui::CreateColorProviderFromRendererColorMap(renderer_color_map);
|
||||
- new_color_provider.GenerateColorMapForTesting();
|
||||
EXPECT_EQ(kTotaltRendererColorIds,
|
||||
new_color_provider.color_map_for_testing().size());
|
||||
}
|
||||
@@ -73,6 +73,7 @@ TEST_F(ColorProviderUtilsTest, ColorProv
|
||||
for (int i = ui::kUiColorsStart + 1; i < ui::kUiColorsEnd; ++i) {
|
||||
mixer[i] = {static_cast<SkColor>(i)};
|
||||
}
|
||||
+ color_provider.GenerateColorMap();
|
||||
|
||||
// A renderer color map generated from its source provider should have
|
||||
// equivalent mappings.
|
||||
@@ -84,6 +85,7 @@ TEST_F(ColorProviderUtilsTest, ColorProv
|
||||
// Providers with different renderer color mappings should not be flagged as
|
||||
// equivalent.
|
||||
ui::ColorProvider new_color_provider;
|
||||
+ new_color_provider.GenerateColorMap();
|
||||
EXPECT_FALSE(IsRendererColorMappingEquivalent(&new_color_provider,
|
||||
renderer_color_map));
|
||||
}
|
||||
@@ -119,6 +121,7 @@ TEST_F(ColorProviderUtilsTest, DefaultBl
|
||||
ui::ColorProvider random_color_provider;
|
||||
ui::ColorMixer& mixer = random_color_provider.AddMixer();
|
||||
mixer[ui::kColorPrimaryBackground] = {SK_ColorWHITE};
|
||||
+ random_color_provider.GenerateColorMap();
|
||||
ui::RendererColorMap random_color_map =
|
||||
ui::CreateRendererColorMap(random_color_provider);
|
||||
|
||||
diff -up chromium-126.0.6478.26/ui/color/sys_color_mixer_unittest.cc.mee chromium-126.0.6478.26/ui/color/sys_color_mixer_unittest.cc
|
||||
--- chromium-126.0.6478.26/ui/color/sys_color_mixer_unittest.cc.mee 2024-05-29 18:02:31.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/color/sys_color_mixer_unittest.cc 2024-06-03 16:22:10.556568986 +0200
|
||||
@@ -36,6 +36,7 @@ class SysColorMixerTest
|
||||
|
||||
AddRefColorMixer(&color_provider_, key);
|
||||
AddSysColorMixer(&color_provider_, key);
|
||||
+ color_provider_.GenerateColorMap();
|
||||
}
|
||||
|
||||
protected:
|
||||
diff -up chromium-126.0.6478.26/ui/native_theme/native_theme_base.cc.mee chromium-126.0.6478.26/ui/native_theme/native_theme_base.cc
|
||||
--- chromium-126.0.6478.26/ui/native_theme/native_theme_base.cc.mee 2024-05-29 18:02:32.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/native_theme/native_theme_base.cc 2024-06-03 16:22:10.556568986 +0200
|
||||
@@ -1763,9 +1763,8 @@ bool NativeThemeBase::IsColorPipelineSup
|
||||
ControlColorId color_id) const {
|
||||
// Color providers are not yet supported on Android so we need to check that
|
||||
// the color_provider is not null here.
|
||||
- if (!color_provider || !color_provider->HasMixers()) {
|
||||
+ if (!color_provider || color_provider->IsColorMapEmpty())
|
||||
return false;
|
||||
- }
|
||||
|
||||
static constexpr auto kControlColorIdsSet =
|
||||
base::MakeFixedFlatSet<ControlColorId>({kBorder,
|
||||
diff -up chromium-126.0.6478.26/ui/native_theme/native_theme_fluent_unittest.cc.mee chromium-126.0.6478.26/ui/native_theme/native_theme_fluent_unittest.cc
|
||||
--- chromium-126.0.6478.26/ui/native_theme/native_theme_fluent_unittest.cc.mee 2024-05-29 18:02:32.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/native_theme/native_theme_fluent_unittest.cc 2024-06-03 16:22:10.556568986 +0200
|
||||
@@ -134,6 +134,7 @@ TEST_P(NativeThemeFluentTest, VerifyArro
|
||||
TEST_F(NativeThemeFluentTest, PaintThumbRoundedCorners) {
|
||||
cc::RecordPaintCanvas canvas;
|
||||
ColorProvider color_provider;
|
||||
+ color_provider.GenerateColorMap();
|
||||
constexpr gfx::Rect kRect(15, 100);
|
||||
// `is_web_test` is `false` by default.
|
||||
const NativeTheme::ScrollbarThumbExtraParams extra_params;
|
||||
diff -up chromium-126.0.6478.26/ui/wm/core/shadow_controller_unittest.cc.mee chromium-126.0.6478.26/ui/wm/core/shadow_controller_unittest.cc
|
||||
--- chromium-126.0.6478.26/ui/wm/core/shadow_controller_unittest.cc.mee 2024-05-29 18:02:32.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/wm/core/shadow_controller_unittest.cc 2024-06-03 16:22:10.556568986 +0200
|
||||
@@ -285,6 +285,7 @@ TEST_F(ShadowControllerTest, SetColorsMa
|
||||
mixer[ui::kColorShadowValueAmbientShadowElevationTwelve] = {SK_ColorRED};
|
||||
mixer[ui::kColorShadowValueKeyShadowElevationTwentyFour] = {SK_ColorGREEN};
|
||||
mixer[ui::kColorShadowValueAmbientShadowElevationTwentyFour] = {SK_ColorBLUE};
|
||||
+ color_provider.GenerateColorMap();
|
||||
|
||||
shadow->SetElevationToColorsMap(
|
||||
ShadowController::GenerateShadowColorsMap(&color_provider));
|
@ -0,0 +1,248 @@
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/lens/lens_untrusted_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/lens/lens_untrusted_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/lens/lens_untrusted_ui.h.constexpr 2024-05-29 18:00:58.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/lens/lens_untrusted_ui.h 2024-06-02 23:51:25.539916606 +0200
|
||||
@@ -47,7 +47,7 @@ class LensUntrustedUI : public Untrusted
|
||||
mojo::PendingReceiver<color_change_listener::mojom::PageHandler>
|
||||
receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "LensUntrusted"; }
|
||||
+ static const std::string GetWebUIName() { return "LensUntrusted"; }
|
||||
|
||||
private:
|
||||
// lens::mojom::LensPageHandlerFactory:
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/lens/search_bubble_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/lens/search_bubble_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/lens/search_bubble_ui.h.constexpr 2024-05-29 18:00:58.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/lens/search_bubble_ui.h 2024-06-02 23:51:25.539916606 +0200
|
||||
@@ -25,7 +25,7 @@ class SearchBubbleUI : public TopChromeW
|
||||
mojo::PendingReceiver<lens::mojom::SearchBubblePageHandlerFactory>
|
||||
receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "LensSearchBubble"; }
|
||||
+ static const std::string GetWebUIName() { return "LensSearchBubble"; }
|
||||
|
||||
private:
|
||||
// lens::mojom::SearchBubblePageHandlerFactory
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/commerce/shopping_insights_side_panel_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/commerce/shopping_insights_side_panel_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/commerce/shopping_insights_side_panel_ui.h.constexpr 2024-05-29 18:00:59.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/commerce/shopping_insights_side_panel_ui.h 2024-06-02 23:51:25.539916606 +0200
|
||||
@@ -55,7 +55,7 @@ class ShoppingInsightsSidePanelUI
|
||||
mojo::PendingReceiver<
|
||||
shopping_service::mojom::ShoppingServiceHandlerFactory> receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() {
|
||||
+ static const std::string GetWebUIName() {
|
||||
return "ShoppingInsightsSidePanel";
|
||||
}
|
||||
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/compose/compose_untrusted_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/compose/compose_untrusted_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/compose/compose_untrusted_ui.h.constexpr 2024-05-29 18:00:59.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/compose/compose_untrusted_ui.h 2024-06-02 23:51:25.540916630 +0200
|
||||
@@ -58,7 +58,7 @@ class ComposeUntrustedUI
|
||||
triggering_web_contents_ = web_contents->GetWeakPtr();
|
||||
}
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "Compose"; }
|
||||
+ static const std::string GetWebUIName() { return "Compose"; }
|
||||
|
||||
private:
|
||||
void CreateComposeSessionUntrustedPageHandler(
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.h.constexpr 2024-05-29 18:00:59.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.h 2024-06-02 23:51:25.540916630 +0200
|
||||
@@ -75,7 +75,7 @@ class BookmarksSidePanelUI
|
||||
commerce::ShoppingListContextMenuController*
|
||||
GetShoppingListContextMenuController();
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "BookmarksSidePanel"; }
|
||||
+ static const std::string GetWebUIName() { return "BookmarksSidePanel"; }
|
||||
|
||||
private:
|
||||
// side_panel::mojom::BookmarksPageHandlerFactory:
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/companion/companion_side_panel_untrusted_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/companion/companion_side_panel_untrusted_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/companion/companion_side_panel_untrusted_ui.h.constexpr 2024-06-03 18:20:28.504604071 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/companion/companion_side_panel_untrusted_ui.h 2024-06-03 18:20:44.559016497 +0200
|
||||
@@ -34,7 +34,7 @@ class CompanionSidePanelUntrustedUI
|
||||
// Gets a weak pointer to this object.
|
||||
base::WeakPtr<CompanionSidePanelUntrustedUI> GetWeakPtr();
|
||||
|
||||
- static constexpr std::string GetWebUIName() {
|
||||
+ static const std::string GetWebUIName() {
|
||||
return "CompanionSidePanelUntrusted";
|
||||
}
|
||||
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_ui.h.constexpr 2024-06-03 18:13:52.741282949 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_ui.h 2024-06-03 18:14:34.718442888 +0200
|
||||
@@ -111,7 +111,7 @@ class CustomizeChromeUI
|
||||
side_panel::customize_chrome::mojom::CustomizeToolbarHandlerFactory>
|
||||
receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "CustomizeChrome"; }
|
||||
+ static const std::string GetWebUIName() { return "CustomizeChrome"; }
|
||||
|
||||
private:
|
||||
// side_panel::mojom::CustomizeChromePageHandlerFactory
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/history_clusters/history_clusters_side_panel_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/history_clusters/history_clusters_side_panel_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/history_clusters/history_clusters_side_panel_ui.h.constexpr 2024-05-29 18:00:59.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/history_clusters/history_clusters_side_panel_ui.h 2024-06-02 23:51:25.540916630 +0200
|
||||
@@ -70,7 +70,7 @@ class HistoryClustersSidePanelUI : publi
|
||||
void DidFinishNavigation(
|
||||
content::NavigationHandle* navigation_handle) override;
|
||||
|
||||
- static constexpr std::string GetWebUIName() {
|
||||
+ static const std::string GetWebUIName() {
|
||||
return "HistoryClustersSidePanel";
|
||||
}
|
||||
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/performance_controls/performance_side_panel_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/performance_controls/performance_side_panel_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/performance_controls/performance_side_panel_ui.h.constexpr 2024-05-29 18:00:59.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/performance_controls/performance_side_panel_ui.h 2024-06-02 23:51:25.540916630 +0200
|
||||
@@ -41,7 +41,7 @@ class PerformanceSidePanelUI
|
||||
mojo::PendingReceiver<color_change_listener::mojom::PageHandler>
|
||||
pending_receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "PerformanceSidePanel"; }
|
||||
+ static const std::string GetWebUIName() { return "PerformanceSidePanel"; }
|
||||
|
||||
private:
|
||||
// side_panel::mojom::PerformancePageHandlerFactory:
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.h.constexpr 2024-05-29 18:01:00.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.h 2024-06-02 23:51:25.541916654 +0200
|
||||
@@ -55,7 +55,7 @@ class ReadAnythingUntrustedUI
|
||||
mojo::PendingReceiver<read_anything::mojom::UntrustedPageHandlerFactory>
|
||||
receiver);
|
||||
|
||||
- static constexpr std::string GetWebUIName() {
|
||||
+ static const std::string GetWebUIName() {
|
||||
return "ReadAnythingUntrusted";
|
||||
}
|
||||
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/reading_list/reading_list_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/reading_list/reading_list_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/reading_list/reading_list_ui.h.constexpr 2024-05-29 18:01:00.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/reading_list/reading_list_ui.h 2024-06-02 23:51:25.541916654 +0200
|
||||
@@ -58,7 +58,7 @@ class ReadingListUI : public TopChromeWe
|
||||
|
||||
void SetActiveTabURL(const GURL& url);
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "ReadingList"; }
|
||||
+ static const std::string GetWebUIName() { return "ReadingList"; }
|
||||
|
||||
private:
|
||||
// reading_list::mojom::PageHandlerFactory:
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/user_notes/user_notes_side_panel_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/user_notes/user_notes_side_panel_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/user_notes/user_notes_side_panel_ui.h.constexpr 2024-05-29 18:01:00.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/side_panel/user_notes/user_notes_side_panel_ui.h 2024-06-02 23:51:25.541916654 +0200
|
||||
@@ -35,7 +35,7 @@ class UserNotesSidePanelUI
|
||||
|
||||
void set_browser(Browser* browser) { browser_ = browser; }
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "UserNotesSidePanel"; }
|
||||
+ static const std::string GetWebUIName() { return "UserNotesSidePanel"; }
|
||||
|
||||
private:
|
||||
// user_notes::mojom::UserNotesPageHandlerFactory
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/webui/tab_search/tab_search_ui.h.constexpr chromium-126.0.6478.26/chrome/browser/ui/webui/tab_search/tab_search_ui.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/webui/tab_search/tab_search_ui.h.constexpr 2024-05-29 18:01:00.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/webui/tab_search/tab_search_ui.h 2024-06-02 23:51:25.542916677 +0200
|
||||
@@ -58,7 +58,7 @@ class TabSearchUI : public TopChromeWebU
|
||||
return page_handler_.get();
|
||||
}
|
||||
|
||||
- static constexpr std::string GetWebUIName() { return "TabSearch"; }
|
||||
+ static const std::string GetWebUIName() { return "TabSearch"; }
|
||||
|
||||
private:
|
||||
// tab_search::mojom::PageHandlerFactory
|
||||
diff -up chromium-126.0.6478.26/components/autofill/core/browser/data_model/autofill_i18n_api.h.constexpr chromium-126.0.6478.26/components/autofill/core/browser/data_model/autofill_i18n_api.h
|
||||
--- chromium-126.0.6478.26/components/autofill/core/browser/data_model/autofill_i18n_api.h.constexpr 2024-05-29 18:01:05.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/components/autofill/core/browser/data_model/autofill_i18n_api.h 2024-06-02 23:51:25.542916677 +0200
|
||||
@@ -16,8 +16,8 @@ namespace autofill::i18n_model_definitio
|
||||
// Country code that represents autofill's legacy address hierarchy model as
|
||||
// stored `kAutofillModelRules`. As a workaround for GCC we declare the
|
||||
// std::string constexpr first.
|
||||
-constexpr inline std::string kLegacyHierarchyCountryCodeString{"XX"};
|
||||
-constexpr AddressCountryCode kLegacyHierarchyCountryCode =
|
||||
+const inline std::string kLegacyHierarchyCountryCodeString{"XX"};
|
||||
+const AddressCountryCode kLegacyHierarchyCountryCode =
|
||||
AddressCountryCode(kLegacyHierarchyCountryCodeString);
|
||||
|
||||
// Creates an instance of the address hierarchy model corresponding to the
|
||||
diff -up chromium-126.0.6478.26/components/autofill/core/browser/form_parsing/transpile_regex_patterns.py.constexpr chromium-126.0.6478.26/components/autofill/core/browser/form_parsing/transpile_regex_patterns.py
|
||||
--- chromium-126.0.6478.26/components/autofill/core/browser/form_parsing/transpile_regex_patterns.py.constexpr 2024-05-29 18:01:05.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/components/autofill/core/browser/form_parsing/transpile_regex_patterns.py 2024-06-02 23:51:36.322172739 +0200
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env python
|
||||
+#!/opt/rh/rh-python38/root/usr/bin/python
|
||||
|
||||
# Copyright 2020 The Chromium Authors
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
@@ -54,7 +54,7 @@ def generate_matching_pattern_equals(nam
|
||||
yield '// Checks if all the matching patterns for the given PatternSources'
|
||||
yield '// and language are the same - meaning that computing predictions for'
|
||||
yield '// both is unnecessary, since it will yield the same result.'
|
||||
- yield 'constexpr bool AreMatchingPatternsEqualImpl(PatternSource a,'
|
||||
+ yield 'const bool AreMatchingPatternsEqualImpl(PatternSource a,'
|
||||
yield ' PatternSource b,'
|
||||
yield ' LanguageCode lang_code) {'
|
||||
yield ' if (a == b) {'
|
||||
diff -up chromium-126.0.6478.26/components/autofill/core/browser/metrics/log_event.h.constexpr chromium-126.0.6478.26/components/autofill/core/browser/metrics/log_event.h
|
||||
--- chromium-126.0.6478.26/components/autofill/core/browser/metrics/log_event.h.constexpr 2024-05-29 18:01:05.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/components/autofill/core/browser/metrics/log_event.h 2024-06-02 23:51:25.542916677 +0200
|
||||
@@ -57,7 +57,7 @@ struct IsRequired {
|
||||
// This function is not defined and consteval. Therefore, any evaluation will
|
||||
// fail and fail at compile time.
|
||||
template <typename T>
|
||||
- consteval operator T(); // NOLINT
|
||||
+ operator T(); // NOLINT
|
||||
};
|
||||
|
||||
} // namespace internal
|
||||
diff -up chromium-126.0.6478.26/components/history/core/browser/history_types.h.constexpr chromium-126.0.6478.26/components/history/core/browser/history_types.h
|
||||
--- chromium-126.0.6478.26/components/history/core/browser/history_types.h.constexpr 2024-05-29 18:01:06.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/components/history/core/browser/history_types.h 2024-06-02 23:51:25.542916677 +0200
|
||||
@@ -70,7 +70,7 @@ constexpr VisitedLinkID kInvalidVisitedL
|
||||
typedef std::map<VisitID, VisitSource> VisitSourceMap;
|
||||
|
||||
// Constant used to represent that no app_id is used for matching.
|
||||
-inline constexpr std::optional<std::string> kNoAppIdFilter = std::nullopt;
|
||||
+inline const std::optional<std::string> kNoAppIdFilter = std::nullopt;
|
||||
|
||||
// VisitRow -------------------------------------------------------------------
|
||||
|
||||
diff -up chromium-126.0.6478.26/components/omnibox/browser/on_device_tail_model_service.cc.constexpr chromium-126.0.6478.26/components/omnibox/browser/on_device_tail_model_service.cc
|
||||
--- chromium-126.0.6478.26/components/omnibox/browser/on_device_tail_model_service.cc.constexpr 2024-05-29 18:01:07.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/components/omnibox/browser/on_device_tail_model_service.cc 2024-06-02 23:51:25.543916702 +0200
|
||||
@@ -30,7 +30,7 @@ namespace {
|
||||
// The maximum idle time before the model executor is unloaded from memory.
|
||||
constexpr base::TimeDelta kMaxExecutorIdleSeconds = base::Seconds(60);
|
||||
// Constants for TFlite model validation.
|
||||
-constexpr std::string kTestPrefix = "face";
|
||||
+const std::string kTestPrefix = "face";
|
||||
constexpr std::string_view kModelValidationSwitchName =
|
||||
"omnibox-on-device-tail-model-validation";
|
||||
|
||||
diff -up chromium-126.0.6478.26/services/network/shared_dictionary/simple_url_pattern_matcher.cc.constexpr chromium-126.0.6478.26/services/network/shared_dictionary/simple_url_pattern_matcher.cc
|
||||
--- chromium-126.0.6478.26/services/network/shared_dictionary/simple_url_pattern_matcher.cc.constexpr 2024-05-29 18:01:36.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/services/network/shared_dictionary/simple_url_pattern_matcher.cc 2024-06-02 23:51:25.543916702 +0200
|
||||
@@ -28,17 +28,17 @@ namespace network {
|
||||
namespace {
|
||||
|
||||
// https://urlpattern.spec.whatwg.org/#default-options
|
||||
-constexpr liburlpattern::Options kDefaultOptions = {.delimiter_list = "",
|
||||
+const liburlpattern::Options kDefaultOptions = {.delimiter_list = "",
|
||||
.prefix_list = "",
|
||||
.sensitive = true,
|
||||
.strict = true};
|
||||
// https://urlpattern.spec.whatwg.org/#hostname-options
|
||||
-constexpr liburlpattern::Options kHostnameOptions = {.delimiter_list = ".",
|
||||
+const liburlpattern::Options kHostnameOptions = {.delimiter_list = ".",
|
||||
.prefix_list = "",
|
||||
.sensitive = true,
|
||||
.strict = true};
|
||||
// https://urlpattern.spec.whatwg.org/#pathname-options
|
||||
-constexpr liburlpattern::Options kPathnameOptions = {.delimiter_list = "/",
|
||||
+const liburlpattern::Options kPathnameOptions = {.delimiter_list = "/",
|
||||
.prefix_list = "/",
|
||||
.sensitive = true,
|
||||
.strict = true};
|
@ -0,0 +1,47 @@
|
||||
diff -up chromium-126.0.6478.26/third_party/wayland/src/cursor/os-compatibility.c.el7-memfd-fcntl-include chromium-126.0.6478.26/third_party/wayland/src/cursor/os-compatibility.c
|
||||
--- chromium-126.0.6478.26/third_party/wayland/src/cursor/os-compatibility.c.el7-memfd-fcntl-include 2024-05-29 18:03:08.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/wayland/src/cursor/os-compatibility.c 2024-06-02 15:13:21.636638066 +0200
|
||||
@@ -29,7 +29,8 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
-#include <fcntl.h>
|
||||
+#include <linux/fcntl.h> // for F_SEAL_SHRINK, F_ADD_SEALS, F_SEAL_SEAL
|
||||
+#include <linux/memfd.h> // for MFD_CLOEXEC
|
||||
#include <errno.h>
|
||||
#include <signal.h>
|
||||
#include <string.h>
|
||||
diff -up chromium-126.0.6478.26/third_party/wayland/src/src/wayland-shm.c.el7-memfd-fcntl-include chromium-126.0.6478.26/third_party/wayland/src/src/wayland-shm.c
|
||||
--- chromium-126.0.6478.26/third_party/wayland/src/src/wayland-shm.c.el7-memfd-fcntl-include 2024-05-29 18:03:08.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/wayland/src/src/wayland-shm.c 2024-06-02 15:13:21.635638045 +0200
|
||||
@@ -44,7 +44,7 @@
|
||||
#include <signal.h>
|
||||
#include <pthread.h>
|
||||
#include <errno.h>
|
||||
-#include <fcntl.h>
|
||||
+#include <linux/fcntl.h>
|
||||
|
||||
#include "wayland-os.h"
|
||||
#include "wayland-util.h"
|
||||
diff -up chromium-126.0.6478.26/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc.el7-memfd-fcntl-include chromium-126.0.6478.26/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc
|
||||
--- chromium-126.0.6478.26/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc.el7-memfd-fcntl-include 2024-06-02 15:13:21.636638066 +0200
|
||||
+++ chromium-126.0.6478.26/ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.cc 2024-06-02 15:16:18.202679909 +0200
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "ui/ozone/platform/wayland/host/zwp_text_input_wrapper_v1.h"
|
||||
|
||||
#include <sys/mman.h>
|
||||
+#include <linux/memfd.h>
|
||||
|
||||
#include <string>
|
||||
#include <string_view>
|
||||
diff -up chromium-126.0.6478.26/v8/src/base/platform/platform-posix.cc.el7-memfd-fcntl-include chromium-126.0.6478.26/v8/src/base/platform/platform-posix.cc
|
||||
--- chromium-126.0.6478.26/v8/src/base/platform/platform-posix.cc.el7-memfd-fcntl-include 2024-05-29 18:03:35.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/v8/src/base/platform/platform-posix.cc 2024-06-02 15:13:21.635638045 +0200
|
||||
@@ -60,6 +60,7 @@
|
||||
|
||||
#if V8_OS_LINUX
|
||||
#include <sys/prctl.h> // for prctl
|
||||
+#include <linux/memfd.h> // for MFD_CLOEXEC
|
||||
#endif
|
||||
|
||||
#if defined(V8_OS_FUCHSIA)
|
@ -0,0 +1,12 @@
|
||||
diff -up chromium-126.0.6478.26/net/third_party/quiche/src/quiche/quic/core/quic_interval_deque.h.me chromium-126.0.6478.26/net/third_party/quiche/src/quiche/quic/core/quic_interval_deque.h
|
||||
--- chromium-126.0.6478.26/net/third_party/quiche/src/quiche/quic/core/quic_interval_deque.h.me 2024-06-03 15:01:54.724207324 +0200
|
||||
+++ chromium-126.0.6478.26/net/third_party/quiche/src/quiche/quic/core/quic_interval_deque.h 2024-06-03 14:58:16.244189794 +0200
|
||||
@@ -144,7 +144,7 @@ class QUICHE_NO_EXPORT QuicIntervalDeque
|
||||
// for efficient std::lower_bound() calls.
|
||||
class QUICHE_NO_EXPORT Iterator {
|
||||
public:
|
||||
- using iterator_category = std::random_access_iterator_tag;
|
||||
+ using iterator_category = std::forward_iterator_tag;
|
||||
using value_type = T;
|
||||
using difference_type = std::ptrdiff_t;
|
||||
using pointer = T*;
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,96 @@
|
||||
diff -up chromium-126.0.6478.26/components/visited_url_ranking/internal/visited_url_ranking_service_impl.cc.std_variant chromium-126.0.6478.26/components/visited_url_ranking/internal/visited_url_ranking_service_impl.cc
|
||||
--- chromium-126.0.6478.26/components/visited_url_ranking/internal/visited_url_ranking_service_impl.cc.std_variant 2024-06-04 12:31:10.602282813 +0200
|
||||
+++ chromium-126.0.6478.26/components/visited_url_ranking/internal/visited_url_ranking_service_impl.cc 2024-06-04 13:21:50.121345183 +0200
|
||||
@@ -7,7 +7,6 @@
|
||||
#include <map>
|
||||
#include <memory>
|
||||
#include <queue>
|
||||
-#include <variant>
|
||||
#include <vector>
|
||||
|
||||
#include "base/barrier_callback.h"
|
||||
@@ -41,20 +40,16 @@ std::vector<URLVisitAggregate> ComputeUR
|
||||
for (std::pair<const URLMergeKey, URLVisitAggregate::URLVisitVariant>&
|
||||
url_data : result.data) {
|
||||
URLVisitAggregate& aggregate = url_visit_map[url_data.first];
|
||||
- std::visit(
|
||||
- URLVisitVariantHelper{
|
||||
- [&aggregate](URLVisitAggregate::TabData& tab_data) {
|
||||
- aggregate.fetcher_data_map.emplace(
|
||||
- tab_data.last_active_tab.session_name.has_value()
|
||||
- ? Fetcher::kSession
|
||||
- : Fetcher::kTabModel,
|
||||
- std::move(tab_data));
|
||||
- },
|
||||
- [&aggregate](URLVisitAggregate::HistoryData& history_data) {
|
||||
- aggregate.fetcher_data_map.emplace(Fetcher::kHistory,
|
||||
- std::move(history_data));
|
||||
- }},
|
||||
- url_data.second);
|
||||
+ if (std::holds_alternative<URLVisitAggregate::TabData>(url_data.second)) {
|
||||
+ auto& tab_data = std::get<URLVisitAggregate::TabData>(url_data.second);
|
||||
+ aggregate.fetcher_data_map.emplace(
|
||||
+ tab_data.last_active_tab.session_name.has_value()
|
||||
+ ? Fetcher::kSession
|
||||
+ : Fetcher::kTabModel,
|
||||
+ std::move(tab_data));
|
||||
+ }
|
||||
+ // TODO(crbug.com/330580109): Add support for history fetcher and
|
||||
+ // associated aggregate data type.
|
||||
}
|
||||
}
|
||||
|
||||
diff -up chromium-126.0.6478.26/components/visited_url_ranking/public/url_visit.cc.std_variant chromium-126.0.6478.26/components/visited_url_ranking/public/url_visit.cc
|
||||
--- chromium-126.0.6478.26/components/visited_url_ranking/public/url_visit.cc.std_variant 2024-06-04 12:29:20.593240495 +0200
|
||||
+++ chromium-126.0.6478.26/components/visited_url_ranking/public/url_visit.cc 2024-06-04 12:29:57.253921979 +0200
|
||||
@@ -37,14 +37,12 @@ URLVisitAggregate& URLVisitAggregate::op
|
||||
std::set<const GURL*> URLVisitAggregate::GetAssociatedURLs() const {
|
||||
std::set<const GURL*> urls = {};
|
||||
for (const auto& fetcher_entry : fetcher_data_map) {
|
||||
- std::visit(URLVisitVariantHelper{
|
||||
- [&urls](const URLVisitAggregate::TabData& tab_data) {
|
||||
- urls.insert(&tab_data.last_active_tab.visit.url);
|
||||
- },
|
||||
- [&urls](const URLVisitAggregate::HistoryData& history_data) {
|
||||
- urls.insert(&history_data.last_visited.url_row.url());
|
||||
- }},
|
||||
- fetcher_entry.second);
|
||||
+ if (std::holds_alternative<URLVisitAggregate::TabData>(
|
||||
+ fetcher_entry.second)) {
|
||||
+ const auto& tab_data =
|
||||
+ std::get<URLVisitAggregate::TabData>(fetcher_entry.second);
|
||||
+ urls.insert(&tab_data.last_active_tab.visit.url);
|
||||
+ }
|
||||
}
|
||||
return urls;
|
||||
}
|
||||
diff -up chromium-126.0.6478.26/components/visited_url_ranking/public/url_visit.h.std_variant chromium-126.0.6478.26/components/visited_url_ranking/public/url_visit.h
|
||||
--- chromium-126.0.6478.26/components/visited_url_ranking/public/url_visit.h.std_variant 2024-06-04 11:05:39.505847241 +0200
|
||||
+++ chromium-126.0.6478.26/components/visited_url_ranking/public/url_visit.h 2024-06-04 13:22:26.518007748 +0200
|
||||
@@ -8,6 +8,7 @@
|
||||
#include <memory>
|
||||
#include <optional>
|
||||
#include <set>
|
||||
+#include <variant>
|
||||
#include <vector>
|
||||
|
||||
#include "base/functional/callback.h"
|
||||
@@ -140,18 +141,6 @@ struct URLVisitAggregate {
|
||||
bool bookmarked = false;
|
||||
};
|
||||
|
||||
-// Helper to visit each variant of URLVisitVariant.
|
||||
-// Usage:
|
||||
-// std::visit(URLVisitVariantHelper{
|
||||
-// [](Variant1& variant1) {},
|
||||
-// [](Variant2& variant1) {},
|
||||
-// [](Variant3& variant1) {},
|
||||
-// variant_data);
|
||||
-template <class... Ts>
|
||||
-struct URLVisitVariantHelper : Ts... {
|
||||
- using Ts::operator()...;
|
||||
-};
|
||||
-
|
||||
} // namespace visited_url_ranking
|
||||
|
||||
#endif // COMPONENTS_VISITED_URL_RANKING_PUBLIC_URL_VISIT_H_
|
@ -0,0 +1,21 @@
|
||||
diff -up chromium-126.0.6478.26/chrome/renderer/accessibility/read_anything_app_model.cc.stdformat chromium-126.0.6478.26/chrome/renderer/accessibility/read_anything_app_model.cc
|
||||
--- chromium-126.0.6478.26/chrome/renderer/accessibility/read_anything_app_model.cc.stdformat 2024-06-03 22:52:18.596936767 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/renderer/accessibility/read_anything_app_model.cc 2024-06-03 23:26:46.024734453 +0200
|
||||
@@ -1059,7 +1059,7 @@ std::string ReadAnythingAppModel::GetHtm
|
||||
int32_t hierarchical_level =
|
||||
ax_node->GetIntAttribute(ax::mojom::IntAttribute::kHierarchicalLevel);
|
||||
if (hierarchical_level) {
|
||||
- return std::format("h{}", hierarchical_level);
|
||||
+ return std::string("h" + std::to_string(hierarchical_level));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1159,7 +1159,7 @@ std::string ReadAnythingAppModel::GetHea
|
||||
int32_t hierarchical_level =
|
||||
ax_node->GetIntAttribute(ax::mojom::IntAttribute::kHierarchicalLevel);
|
||||
if (hierarchical_level) {
|
||||
- return std::format("h{}", hierarchical_level);
|
||||
+ return std::string("h" + std::to_string(hierarchical_level));
|
||||
}
|
||||
return html_tag;
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
diff -up chromium-126.0.6478.26/build/config/compiler/BUILD.gn.me chromium-126.0.6478.26/build/config/compiler/BUILD.gn
|
||||
--- chromium-126.0.6478.26/build/config/compiler/BUILD.gn.me 2024-06-02 14:02:52.516602574 +0200
|
||||
+++ chromium-126.0.6478.26/build/config/compiler/BUILD.gn 2024-06-02 14:17:24.527503540 +0200
|
||||
@@ -575,24 +575,6 @@ config("compiler") {
|
||||
}
|
||||
}
|
||||
|
||||
- # 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) {
|
||||
- cflags += [
|
||||
- "-mllvm",
|
||||
- "-split-threshold-for-reg-with-hint=0",
|
||||
- ]
|
||||
- if (use_thin_lto && is_a_target_toolchain) {
|
||||
- if (is_win) {
|
||||
- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ]
|
||||
- } else {
|
||||
- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
-
|
||||
# TODO(crbug.com/40192287): Investigate why/if this should be needed.
|
||||
if (is_win) {
|
||||
cflags += [ "/clang:-ffp-contract=off" ]
|
@ -0,0 +1,667 @@
|
||||
diff -up chromium-126.0.6478.26/base/allocator/partition_allocator/src/partition_alloc/starscan/stats_collector.h.system-libstdc++ chromium-126.0.6478.26/base/allocator/partition_allocator/src/partition_alloc/starscan/stats_collector.h
|
||||
--- chromium-126.0.6478.26/base/allocator/partition_allocator/src/partition_alloc/starscan/stats_collector.h.system-libstdc++ 2024-05-29 18:00:45.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/base/allocator/partition_allocator/src/partition_alloc/starscan/stats_collector.h 2024-06-02 23:51:25.562917154 +0200
|
||||
@@ -14,7 +14,7 @@
|
||||
#include <unordered_map>
|
||||
#include <utility>
|
||||
|
||||
-#include "partition_alloc/internal_allocator_forward.h"
|
||||
+#include "partition_alloc/internal_allocator.h"
|
||||
#include "partition_alloc/partition_alloc_base/threading/platform_thread.h"
|
||||
#include "partition_alloc/partition_alloc_base/time/time.h"
|
||||
#include "partition_alloc/partition_alloc_check.h"
|
||||
diff -up chromium-126.0.6478.26/chrome/browser/ui/tabs/tab_strip_model.h.system-libstdc++ chromium-126.0.6478.26/chrome/browser/ui/tabs/tab_strip_model.h
|
||||
--- chromium-126.0.6478.26/chrome/browser/ui/tabs/tab_strip_model.h.system-libstdc++ 2024-05-29 18:00:59.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/chrome/browser/ui/tabs/tab_strip_model.h 2024-06-02 23:51:25.563917178 +0200
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <memory>
|
||||
#include <optional>
|
||||
#include <string>
|
||||
+#include <variant>
|
||||
#include <vector>
|
||||
|
||||
#include "base/containers/span.h"
|
||||
diff -up chromium-126.0.6478.26/components/viz/service/display/surface_aggregator.cc.system-libstdc++ chromium-126.0.6478.26/components/viz/service/display/surface_aggregator.cc
|
||||
--- chromium-126.0.6478.26/components/viz/service/display/surface_aggregator.cc.system-libstdc++ 2024-05-29 18:01:12.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/components/viz/service/display/surface_aggregator.cc 2024-06-02 23:51:25.563917178 +0200
|
||||
@@ -2296,7 +2296,7 @@ AggregatedFrame SurfaceAggregator::Aggre
|
||||
root_surface_id_ = surface_id;
|
||||
|
||||
// Start recording new stats for this aggregation.
|
||||
- stats_.emplace();
|
||||
+ stats_ = AggregateStatistics{};
|
||||
|
||||
base::ElapsedTimer prewalk_timer;
|
||||
ResolvedFrameData* resolved_frame = GetResolvedFrame(surface_id);
|
||||
diff -up chromium-126.0.6478.26/content/browser/first_party_sets/first_party_sets_handler_database_helper.cc.system-libstdc++ chromium-126.0.6478.26/content/browser/first_party_sets/first_party_sets_handler_database_helper.cc
|
||||
--- chromium-126.0.6478.26/content/browser/first_party_sets/first_party_sets_handler_database_helper.cc.system-libstdc++ 2024-05-29 18:01:12.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/content/browser/first_party_sets/first_party_sets_handler_database_helper.cc 2024-06-02 23:51:25.563917178 +0200
|
||||
@@ -2,6 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
+#include <optional>
|
||||
#include "content/browser/first_party_sets/first_party_sets_handler_database_helper.h"
|
||||
|
||||
#include "base/containers/contains.h"
|
||||
diff -up chromium-126.0.6478.26/content/services/auction_worklet/real_time_reporting_bindings.h.system-libstdc++ chromium-126.0.6478.26/content/services/auction_worklet/real_time_reporting_bindings.h
|
||||
--- chromium-126.0.6478.26/content/services/auction_worklet/real_time_reporting_bindings.h.system-libstdc++ 2024-06-04 13:52:43.689553459 +0200
|
||||
+++ chromium-126.0.6478.26/content/services/auction_worklet/real_time_reporting_bindings.h 2024-06-04 13:52:01.117778943 +0200
|
||||
@@ -12,7 +12,7 @@
|
||||
#include "content/common/content_export.h"
|
||||
#include "content/services/auction_worklet/auction_v8_helper.h"
|
||||
#include "content/services/auction_worklet/context_recycler.h"
|
||||
-#include "content/services/auction_worklet/public/mojom/real_time_reporting.mojom-forward.h"
|
||||
+#include "content/services/auction_worklet/public/mojom/real_time_reporting.mojom.h"
|
||||
#include "v8/include/v8-forward.h"
|
||||
|
||||
namespace auction_worklet {
|
||||
diff -up chromium-126.0.6478.26/gpu/command_buffer/service/shared_image/shared_image_backing.h.system-libstdc++ chromium-126.0.6478.26/gpu/command_buffer/service/shared_image/shared_image_backing.h
|
||||
--- chromium-126.0.6478.26/gpu/command_buffer/service/shared_image/shared_image_backing.h.system-libstdc++ 2024-05-29 18:01:26.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/gpu/command_buffer/service/shared_image/shared_image_backing.h 2024-06-02 23:51:25.564917202 +0200
|
||||
@@ -111,6 +111,25 @@ using VideoDecodeDevice = Microsoft::WRL
|
||||
using VideoDecodeDevice = void*;
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
|
||||
+class ScopedWriteUMA {
|
||||
+ public:
|
||||
+ ScopedWriteUMA() = default;
|
||||
+
|
||||
+ ScopedWriteUMA(const ScopedWriteUMA&) = delete;
|
||||
+ ScopedWriteUMA& operator=(const ScopedWriteUMA&) = delete;
|
||||
+
|
||||
+ ~ScopedWriteUMA() {
|
||||
+ UMA_HISTOGRAM_BOOLEAN("GPU.SharedImage.ContentConsumed",
|
||||
+ content_consumed_);
|
||||
+ }
|
||||
+
|
||||
+ bool content_consumed() const { return content_consumed_; }
|
||||
+ void SetConsumed() { content_consumed_ = true; }
|
||||
+
|
||||
+ private:
|
||||
+ bool content_consumed_ = false;
|
||||
+};
|
||||
+
|
||||
// Represents the actual storage (GL texture, VkImage, GMB) for a SharedImage.
|
||||
// Should not be accessed directly, instead is accessed through a
|
||||
// SharedImageRepresentation.
|
||||
@@ -384,25 +403,6 @@ class GPU_GLES2_EXPORT SharedImageBackin
|
||||
mutable std::optional<base::Lock> lock_;
|
||||
|
||||
private:
|
||||
- class ScopedWriteUMA {
|
||||
- public:
|
||||
- ScopedWriteUMA() = default;
|
||||
-
|
||||
- ScopedWriteUMA(const ScopedWriteUMA&) = delete;
|
||||
- ScopedWriteUMA& operator=(const ScopedWriteUMA&) = delete;
|
||||
-
|
||||
- ~ScopedWriteUMA() {
|
||||
- UMA_HISTOGRAM_BOOLEAN("GPU.SharedImage.ContentConsumed",
|
||||
- content_consumed_);
|
||||
- }
|
||||
-
|
||||
- bool content_consumed() const { return content_consumed_; }
|
||||
- void SetConsumed() { content_consumed_ = true; }
|
||||
-
|
||||
- private:
|
||||
- bool content_consumed_ = false;
|
||||
- };
|
||||
-
|
||||
const Mailbox mailbox_;
|
||||
const viz::SharedImageFormat format_;
|
||||
const gfx::Size size_;
|
||||
diff -up chromium-126.0.6478.26/mojo/public/cpp/bindings/lib/multiplex_router.cc.system-libstdc++ chromium-126.0.6478.26/mojo/public/cpp/bindings/lib/multiplex_router.cc
|
||||
--- chromium-126.0.6478.26/mojo/public/cpp/bindings/lib/multiplex_router.cc.system-libstdc++ 2024-05-29 18:01:33.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/mojo/public/cpp/bindings/lib/multiplex_router.cc 2024-06-02 23:51:25.564917202 +0200
|
||||
@@ -893,7 +893,7 @@ bool MultiplexRouter::ExclusiveSyncWaitF
|
||||
DCHECK(!exclusive_sync_wait_);
|
||||
|
||||
scoped_refptr<MultiplexRouter> keep_alive(this);
|
||||
- exclusive_sync_wait_.emplace();
|
||||
+ exclusive_sync_wait_ = ExclusiveSyncWaitInfo{};
|
||||
exclusive_sync_wait_->interface_id = interface_id;
|
||||
exclusive_sync_wait_->request_id = request_id;
|
||||
while (!exclusive_sync_wait_->finished) {
|
||||
diff -up chromium-126.0.6478.26/third_party/blink/common/interest_group/auction_config_mojom_traits.cc.system-libstdc++ chromium-126.0.6478.26/third_party/blink/common/interest_group/auction_config_mojom_traits.cc
|
||||
--- chromium-126.0.6478.26/third_party/blink/common/interest_group/auction_config_mojom_traits.cc.system-libstdc++ 2024-05-29 18:01:37.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/common/interest_group/auction_config_mojom_traits.cc 2024-06-02 23:51:25.565917225 +0200
|
||||
@@ -225,8 +225,6 @@ bool StructTraits<blink::mojom::AuctionA
|
||||
!data.ReadAllBuyersPrioritySignals(&out->all_buyers_priority_signals) ||
|
||||
!data.ReadAuctionReportBuyerKeys(&out->auction_report_buyer_keys) ||
|
||||
!data.ReadAuctionReportBuyers(&out->auction_report_buyers) ||
|
||||
- !data.ReadAuctionReportBuyerDebugModeConfig(
|
||||
- &out->auction_report_buyer_debug_mode_config) ||
|
||||
!data.ReadRequiredSellerCapabilities(
|
||||
&out->required_seller_capabilities) ||
|
||||
!data.ReadRequestedSize(&out->requested_size) ||
|
||||
diff -up chromium-126.0.6478.26/third_party/blink/renderer/core/loader/history_item.cc.system-libstdc++ chromium-126.0.6478.26/third_party/blink/renderer/core/loader/history_item.cc
|
||||
--- chromium-126.0.6478.26/third_party/blink/renderer/core/loader/history_item.cc.system-libstdc++ 2024-05-29 18:01:39.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/renderer/core/loader/history_item.cc 2024-06-02 23:51:25.565917225 +0200
|
||||
@@ -182,26 +182,26 @@ void HistoryItem::SetReferrerPolicy(netw
|
||||
|
||||
void HistoryItem::SetVisualViewportScrollOffset(const ScrollOffset& offset) {
|
||||
if (!view_state_)
|
||||
- view_state_ = std::make_optional<ViewState>();
|
||||
+ view_state_ = blink::HistoryItem::ViewState{};
|
||||
view_state_->visual_viewport_scroll_offset_ = offset;
|
||||
}
|
||||
|
||||
void HistoryItem::SetScrollOffset(const ScrollOffset& offset) {
|
||||
if (!view_state_)
|
||||
- view_state_ = std::make_optional<ViewState>();
|
||||
+ view_state_ = blink::HistoryItem::ViewState{};
|
||||
view_state_->scroll_offset_ = offset;
|
||||
}
|
||||
|
||||
void HistoryItem::SetPageScaleFactor(float scale_factor) {
|
||||
if (!view_state_)
|
||||
- view_state_ = std::make_optional<ViewState>();
|
||||
+ view_state_ = blink::HistoryItem::ViewState{};
|
||||
view_state_->page_scale_factor_ = scale_factor;
|
||||
}
|
||||
|
||||
void HistoryItem::SetScrollAnchorData(
|
||||
const ScrollAnchorData& scroll_anchor_data) {
|
||||
if (!view_state_)
|
||||
- view_state_ = std::make_optional<ViewState>();
|
||||
+ view_state_ = blink::HistoryItem::ViewState{};
|
||||
view_state_->scroll_anchor_data_ = scroll_anchor_data;
|
||||
}
|
||||
|
||||
diff -up chromium-126.0.6478.26/third_party/blink/renderer/core/page/page_popup_controller.h.system-libstdc++ chromium-126.0.6478.26/third_party/blink/renderer/core/page/page_popup_controller.h
|
||||
--- chromium-126.0.6478.26/third_party/blink/renderer/core/page/page_popup_controller.h.system-libstdc++ 2024-06-04 17:01:05.066469613 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/renderer/core/page/page_popup_controller.h 2024-06-04 16:51:41.076869743 +0200
|
||||
@@ -31,6 +31,7 @@
|
||||
#ifndef THIRD_PARTY_BLINK_RENDERER_CORE_PAGE_PAGE_POPUP_CONTROLLER_H_
|
||||
#define THIRD_PARTY_BLINK_RENDERER_CORE_PAGE_PAGE_POPUP_CONTROLLER_H_
|
||||
|
||||
+#include <optional>
|
||||
#include "third_party/blink/renderer/platform/bindings/script_wrappable.h"
|
||||
#include "third_party/blink/renderer/platform/heap/collection_support/heap_vector.h"
|
||||
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
|
||||
diff -up chromium-126.0.6478.26/third_party/blink/renderer/core/paint/fragment_data_iterator.h.system-libstdc++ chromium-126.0.6478.26/third_party/blink/renderer/core/paint/fragment_data_iterator.h
|
||||
--- chromium-126.0.6478.26/third_party/blink/renderer/core/paint/fragment_data_iterator.h.system-libstdc++ 2024-05-29 18:01:40.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/renderer/core/paint/fragment_data_iterator.h 2024-06-02 23:51:25.565917225 +0200
|
||||
@@ -22,7 +22,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 -up chromium-126.0.6478.26/third_party/blink/renderer/modules/encoding/text_decoder.h.system-libstdc++ chromium-126.0.6478.26/third_party/blink/renderer/modules/encoding/text_decoder.h
|
||||
--- chromium-126.0.6478.26/third_party/blink/renderer/modules/encoding/text_decoder.h.system-libstdc++ 2024-06-03 23:14:03.138724802 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/renderer/modules/encoding/text_decoder.h 2024-06-03 23:14:41.395654435 +0200
|
||||
@@ -31,6 +31,7 @@
|
||||
#ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_ENCODING_TEXT_DECODER_H_
|
||||
#define THIRD_PARTY_BLINK_RENDERER_MODULES_ENCODING_TEXT_DECODER_H_
|
||||
|
||||
+#include <optional>
|
||||
#include <memory>
|
||||
|
||||
#include "third_party/blink/renderer/bindings/core/v8/v8_typedefs.h"
|
||||
diff -up chromium-126.0.6478.26/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc.system-libstdc++ chromium-126.0.6478.26/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc
|
||||
--- chromium-126.0.6478.26/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc.system-libstdc++ 2024-05-29 18:01:40.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc 2024-06-02 23:51:25.566917250 +0200
|
||||
@@ -102,7 +102,7 @@ void MediaControlTimelineElement::Update
|
||||
void MediaControlTimelineElement::SetPosition(double current_time,
|
||||
bool suppress_aria) {
|
||||
if (is_live_ && !live_anchor_time_ && current_time != 0) {
|
||||
- live_anchor_time_.emplace();
|
||||
+ live_anchor_time_ = LiveAnchorTime{};
|
||||
live_anchor_time_->clock_time_ = base::TimeTicks::Now();
|
||||
live_anchor_time_->media_time_ = MediaElement().currentTime();
|
||||
}
|
||||
diff -up chromium-126.0.6478.26/third_party/blink/renderer/platform/fonts/shaping/run_segmenter.h.system-libstdc++ chromium-126.0.6478.26/third_party/blink/renderer/platform/fonts/shaping/run_segmenter.h
|
||||
--- chromium-126.0.6478.26/third_party/blink/renderer/platform/fonts/shaping/run_segmenter.h.system-libstdc++ 2024-06-04 16:52:15.268516255 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/renderer/platform/fonts/shaping/run_segmenter.h 2024-06-04 16:56:23.906705337 +0200
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
#include <unicode/uscript.h>
|
||||
#include <memory>
|
||||
+#include <optional>
|
||||
#include "third_party/blink/renderer/platform/fonts/font_orientation.h"
|
||||
#include "third_party/blink/renderer/platform/fonts/orientation_iterator.h"
|
||||
#include "third_party/blink/renderer/platform/fonts/script_run_iterator.h"
|
||||
diff -up chromium-126.0.6478.26/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc.system-libstdc++ chromium-126.0.6478.26/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc
|
||||
--- chromium-126.0.6478.26/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc.system-libstdc++ 2024-05-29 18:01:41.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc 2024-06-02 23:51:25.566917250 +0200
|
||||
@@ -70,7 +70,7 @@ void GeometryMapperTransformCache::Updat
|
||||
to_2d_translation_root_ += translation;
|
||||
|
||||
if (parent.plane_root_transform_) {
|
||||
- plane_root_transform_.emplace();
|
||||
+ plane_root_transform_ = PlaneRootTransform{};
|
||||
plane_root_transform_->plane_root = parent.plane_root();
|
||||
plane_root_transform_->to_plane_root = parent.to_plane_root();
|
||||
plane_root_transform_->to_plane_root.Translate(translation.x(),
|
||||
@@ -98,7 +98,7 @@ void GeometryMapperTransformCache::Updat
|
||||
// as the 2d translation root.
|
||||
plane_root_transform_ = std::nullopt;
|
||||
} else {
|
||||
- plane_root_transform_.emplace();
|
||||
+ plane_root_transform_ = PlaneRootTransform{};
|
||||
plane_root_transform_->plane_root = parent.plane_root();
|
||||
plane_root_transform_->to_plane_root.MakeIdentity();
|
||||
parent.ApplyToPlaneRoot(plane_root_transform_->to_plane_root);
|
||||
@@ -140,7 +140,7 @@ void GeometryMapperTransformCache::Updat
|
||||
parent_node->UpdateScreenTransform();
|
||||
const auto& parent = parent_node->GetTransformCache();
|
||||
|
||||
- screen_transform_.emplace();
|
||||
+ screen_transform_ = ScreenTransform{};
|
||||
parent.ApplyToScreen(screen_transform_->to_screen);
|
||||
if (node.FlattensInheritedTransform())
|
||||
screen_transform_->to_screen.Flatten();
|
||||
diff -up chromium-126.0.6478.26/third_party/ruy/src/ruy/profiler/instrumentation.h.system-libstdc++ chromium-126.0.6478.26/third_party/ruy/src/ruy/profiler/instrumentation.h
|
||||
--- chromium-126.0.6478.26/third_party/ruy/src/ruy/profiler/instrumentation.h.system-libstdc++ 2024-05-29 18:03:01.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/ruy/src/ruy/profiler/instrumentation.h 2024-06-02 23:51:25.566917250 +0200
|
||||
@@ -19,6 +19,7 @@ limitations under the License.
|
||||
#ifdef RUY_PROFILER
|
||||
#include <cstdio>
|
||||
#include <mutex>
|
||||
+#include <string>
|
||||
#include <vector>
|
||||
#endif
|
||||
|
||||
diff -up chromium-126.0.6478.26/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc.system-libstdc++ chromium-126.0.6478.26/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc
|
||||
--- chromium-126.0.6478.26/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc.system-libstdc++ 2024-05-29 18:03:48.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc 2024-06-02 23:51:25.567917273 +0200
|
||||
@@ -549,7 +549,7 @@ absl::optional<LossBasedBweV2::Config> L
|
||||
if (!enabled.Get()) {
|
||||
return config;
|
||||
}
|
||||
- config.emplace();
|
||||
+ config = Config{};
|
||||
config->bandwidth_rampup_upper_bound_factor =
|
||||
bandwidth_rampup_upper_bound_factor.Get();
|
||||
config->bandwidth_rampup_upper_bound_factor_in_hold =
|
||||
diff -up chromium-126.0.6478.26/ui/gfx/x/generated_protos/randr.cc.system-libstdc++ chromium-126.0.6478.26/ui/gfx/x/generated_protos/randr.cc
|
||||
--- chromium-126.0.6478.26/ui/gfx/x/generated_protos/randr.cc.system-libstdc++ 2024-05-29 18:02:32.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/gfx/x/generated_protos/randr.cc 2024-06-02 23:51:25.568917297 +0200
|
||||
@@ -305,7 +305,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
// data
|
||||
auto data_expr = subCode;
|
||||
if (CaseEq(data_expr, RandR::Notify::CrtcChange)) {
|
||||
- data.cc.emplace();
|
||||
+ data.cc = RandR::NotifyEvent::Cc{};
|
||||
auto& timestamp = (*data.cc).timestamp;
|
||||
auto& window = (*data.cc).window;
|
||||
auto& crtc = (*data.cc).crtc;
|
||||
@@ -349,7 +349,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Read(&height, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::OutputChange)) {
|
||||
- data.oc.emplace();
|
||||
+ data.oc = RandR::NotifyEvent::Oc{};
|
||||
auto& timestamp = (*data.oc).timestamp;
|
||||
auto& config_timestamp = (*data.oc).config_timestamp;
|
||||
auto& window = (*data.oc).window;
|
||||
@@ -394,7 +394,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
subpixel_order = static_cast<Render::SubPixel>(tmp6);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::OutputProperty)) {
|
||||
- data.op.emplace();
|
||||
+ data.op = RandR::NotifyEvent::Op{};
|
||||
auto& window = (*data.op).window;
|
||||
auto& output = (*data.op).output;
|
||||
auto& atom = (*data.op).atom;
|
||||
@@ -422,7 +422,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Pad(&buf, 11);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::ProviderChange)) {
|
||||
- data.pc.emplace();
|
||||
+ data.pc = RandR::NotifyEvent::Pc{};
|
||||
auto& timestamp = (*data.pc).timestamp;
|
||||
auto& window = (*data.pc).window;
|
||||
auto& provider = (*data.pc).provider;
|
||||
@@ -440,7 +440,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Pad(&buf, 16);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::ProviderProperty)) {
|
||||
- data.pp.emplace();
|
||||
+ data.pp = RandR::NotifyEvent::Pp{};
|
||||
auto& window = (*data.pp).window;
|
||||
auto& provider = (*data.pp).provider;
|
||||
auto& atom = (*data.pp).atom;
|
||||
@@ -466,7 +466,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Pad(&buf, 11);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::ResourceChange)) {
|
||||
- data.rc.emplace();
|
||||
+ data.rc = RandR::NotifyEvent::Rc{};
|
||||
auto& timestamp = (*data.rc).timestamp;
|
||||
auto& window = (*data.rc).window;
|
||||
|
||||
@@ -480,7 +480,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
|
||||
Pad(&buf, 20);
|
||||
}
|
||||
if (CaseEq(data_expr, RandR::Notify::Lease)) {
|
||||
- data.lc.emplace();
|
||||
+ data.lc = RandR::NotifyEvent::Lc{};
|
||||
auto& timestamp = (*data.lc).timestamp;
|
||||
auto& window = (*data.lc).window;
|
||||
auto& lease = (*data.lc).lease;
|
||||
diff -up chromium-126.0.6478.26/ui/gfx/x/generated_protos/xinput.cc.system-libstdc++ chromium-126.0.6478.26/ui/gfx/x/generated_protos/xinput.cc
|
||||
--- chromium-126.0.6478.26/ui/gfx/x/generated_protos/xinput.cc.system-libstdc++ 2024-05-29 18:02:32.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/gfx/x/generated_protos/xinput.cc 2024-06-02 23:51:25.569917321 +0200
|
||||
@@ -560,7 +560,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
// data
|
||||
auto data_expr = type;
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Key)) {
|
||||
- data.key.emplace();
|
||||
+ data.key = Input::DeviceClass::Key{};
|
||||
uint16_t num_keys{};
|
||||
auto& keys = (*data.key).keys;
|
||||
|
||||
@@ -575,7 +575,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Button)) {
|
||||
- data.button.emplace();
|
||||
+ data.button = Input::DeviceClass::Button{};
|
||||
uint16_t num_buttons{};
|
||||
auto& state = (*data.button).state;
|
||||
auto& labels = (*data.button).labels;
|
||||
@@ -598,7 +598,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Valuator)) {
|
||||
- data.valuator.emplace();
|
||||
+ data.valuator = Input::DeviceClass::Valuator{};
|
||||
auto& number = (*data.valuator).number;
|
||||
auto& label = (*data.valuator).label;
|
||||
auto& min = (*data.valuator).min;
|
||||
@@ -661,7 +661,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
Pad(&buf, 3);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Scroll)) {
|
||||
- data.scroll.emplace();
|
||||
+ data.scroll = Input::DeviceClass::Scroll{};
|
||||
auto& number = (*data.scroll).number;
|
||||
auto& scroll_type = (*data.scroll).scroll_type;
|
||||
auto& flags = (*data.scroll).flags;
|
||||
@@ -696,7 +696,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Touch)) {
|
||||
- data.touch.emplace();
|
||||
+ data.touch = Input::DeviceClass::Touch{};
|
||||
auto& mode = (*data.touch).mode;
|
||||
auto& num_touches = (*data.touch).num_touches;
|
||||
|
||||
@@ -709,7 +709,7 @@ void ReadEvent<Input::DeviceChangedEvent
|
||||
Read(&num_touches, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Gesture)) {
|
||||
- data.gesture.emplace();
|
||||
+ data.gesture = Input::DeviceClass::Gesture{};
|
||||
auto& num_touches = (*data.gesture).num_touches;
|
||||
|
||||
// num_touches
|
||||
@@ -2187,7 +2187,7 @@ std::unique_ptr<Input::ListInputDevicesR
|
||||
// info
|
||||
auto info_expr = class_id;
|
||||
if (CaseEq(info_expr, Input::InputClass::Key)) {
|
||||
- info.key.emplace();
|
||||
+ info.key = Input::InputInfo::Key{};
|
||||
auto& min_keycode = (*info.key).min_keycode;
|
||||
auto& max_keycode = (*info.key).max_keycode;
|
||||
auto& num_keys = (*info.key).num_keys;
|
||||
@@ -2205,14 +2205,14 @@ std::unique_ptr<Input::ListInputDevicesR
|
||||
Pad(&buf, 2);
|
||||
}
|
||||
if (CaseEq(info_expr, Input::InputClass::Button)) {
|
||||
- info.button.emplace();
|
||||
+ info.button = Input::InputInfo::Button{};
|
||||
auto& num_buttons = (*info.button).num_buttons;
|
||||
|
||||
// num_buttons
|
||||
Read(&num_buttons, &buf);
|
||||
}
|
||||
if (CaseEq(info_expr, Input::InputClass::Valuator)) {
|
||||
- info.valuator.emplace();
|
||||
+ info.valuator = Input::InputInfo::Valuator{};
|
||||
uint8_t axes_len{};
|
||||
auto& mode = (*info.valuator).mode;
|
||||
auto& motion_size = (*info.valuator).motion_size;
|
||||
@@ -3818,7 +3818,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
// data
|
||||
auto data_expr = class_id;
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Keyboard)) {
|
||||
- data.keyboard.emplace();
|
||||
+ data.keyboard = x11::Input::FeedbackState::Keyboard{};
|
||||
auto& pitch = (*data.keyboard).pitch;
|
||||
auto& duration = (*data.keyboard).duration;
|
||||
auto& led_mask = (*data.keyboard).led_mask;
|
||||
@@ -3859,7 +3859,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Pointer)) {
|
||||
- data.pointer.emplace();
|
||||
+ data.pointer = x11::Input::FeedbackState::Pointer{};
|
||||
auto& accel_num = (*data.pointer).accel_num;
|
||||
auto& accel_denom = (*data.pointer).accel_denom;
|
||||
auto& threshold = (*data.pointer).threshold;
|
||||
@@ -3877,7 +3877,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
Read(&threshold, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::String)) {
|
||||
- data.string.emplace();
|
||||
+ data.string = x11::Input::FeedbackState::String{};
|
||||
auto& max_symbols = (*data.string).max_symbols;
|
||||
uint16_t num_keysyms{};
|
||||
auto& keysyms = (*data.string).keysyms;
|
||||
@@ -3896,7 +3896,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Integer)) {
|
||||
- data.integer.emplace();
|
||||
+ data.integer = x11::Input::FeedbackState::Integer{};
|
||||
auto& resolution = (*data.integer).resolution;
|
||||
auto& min_value = (*data.integer).min_value;
|
||||
auto& max_value = (*data.integer).max_value;
|
||||
@@ -3911,7 +3911,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
Read(&max_value, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Led)) {
|
||||
- data.led.emplace();
|
||||
+ data.led = x11::Input::FeedbackState::Led{};
|
||||
auto& led_mask = (*data.led).led_mask;
|
||||
auto& led_values = (*data.led).led_values;
|
||||
|
||||
@@ -3922,7 +3922,7 @@ std::unique_ptr<Input::GetFeedbackContro
|
||||
Read(&led_values, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::FeedbackClass::Bell)) {
|
||||
- data.bell.emplace();
|
||||
+ data.bell = x11::Input::FeedbackState::Bell{};
|
||||
auto& percent = (*data.bell).percent;
|
||||
auto& pitch = (*data.bell).pitch;
|
||||
auto& duration = (*data.bell).duration;
|
||||
@@ -4735,7 +4735,7 @@ std::unique_ptr<Input::QueryDeviceStateR
|
||||
// data
|
||||
auto data_expr = class_id;
|
||||
if (CaseEq(data_expr, Input::InputClass::Key)) {
|
||||
- data.key.emplace();
|
||||
+ data.key = x11::Input::InputState::Key{};
|
||||
auto& num_keys = (*data.key).num_keys;
|
||||
auto& keys = (*data.key).keys;
|
||||
|
||||
@@ -4752,7 +4752,7 @@ std::unique_ptr<Input::QueryDeviceStateR
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::InputClass::Button)) {
|
||||
- data.button.emplace();
|
||||
+ data.button = x11::Input::InputState::Button{};
|
||||
auto& num_buttons = (*data.button).num_buttons;
|
||||
auto& buttons = (*data.button).buttons;
|
||||
|
||||
@@ -4769,7 +4769,7 @@ std::unique_ptr<Input::QueryDeviceStateR
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::InputClass::Valuator)) {
|
||||
- data.valuator.emplace();
|
||||
+ data.valuator = x11::Input::InputState::Valuator{};
|
||||
uint8_t num_valuators{};
|
||||
auto& mode = (*data.valuator).mode;
|
||||
auto& valuators = (*data.valuator).valuators;
|
||||
@@ -5039,7 +5039,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
// data
|
||||
auto data_expr = control_id;
|
||||
if (CaseEq(data_expr, Input::DeviceControl::resolution)) {
|
||||
- data.resolution.emplace();
|
||||
+ data.resolution = x11::Input::DeviceState::Resolution{};
|
||||
uint32_t num_valuators{};
|
||||
auto& resolution_values = (*data.resolution).resolution_values;
|
||||
auto& resolution_min = (*data.resolution).resolution_min;
|
||||
@@ -5070,7 +5070,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceControl::abs_calib)) {
|
||||
- data.abs_calib.emplace();
|
||||
+ data.abs_calib = x11::Input::DeviceState::AbsCalib{};
|
||||
auto& min_x = (*data.abs_calib).min_x;
|
||||
auto& max_x = (*data.abs_calib).max_x;
|
||||
auto& min_y = (*data.abs_calib).min_y;
|
||||
@@ -5105,7 +5105,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
Read(&button_threshold, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceControl::core)) {
|
||||
- data.core.emplace();
|
||||
+ data.core = x11::Input::DeviceState::Core{};
|
||||
auto& status = (*data.core).status;
|
||||
auto& iscore = (*data.core).iscore;
|
||||
|
||||
@@ -5119,7 +5119,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
Pad(&buf, 2);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceControl::enable)) {
|
||||
- data.enable.emplace();
|
||||
+ data.enable = x11::Input::DeviceState::Enable{};
|
||||
auto& enable = (*data.enable).enable;
|
||||
|
||||
// enable
|
||||
@@ -5129,7 +5129,7 @@ std::unique_ptr<Input::GetDeviceControlR
|
||||
Pad(&buf, 3);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceControl::abs_area)) {
|
||||
- data.abs_area.emplace();
|
||||
+ data.abs_area = x11::Input::DeviceState::AbsArea{};
|
||||
auto& offset_x = (*data.abs_area).offset_x;
|
||||
auto& offset_y = (*data.abs_area).offset_y;
|
||||
auto& width = (*data.abs_area).width;
|
||||
@@ -6610,7 +6610,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
// data
|
||||
auto data_expr = type;
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Key)) {
|
||||
- data.key.emplace();
|
||||
+ data.key = Input::DeviceClass::Key{};
|
||||
uint16_t num_keys{};
|
||||
auto& keys = (*data.key).keys;
|
||||
|
||||
@@ -6625,7 +6625,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Button)) {
|
||||
- data.button.emplace();
|
||||
+ data.button = Input::DeviceClass::Button{};
|
||||
uint16_t num_buttons{};
|
||||
auto& state = (*data.button).state;
|
||||
auto& labels = (*data.button).labels;
|
||||
@@ -6648,7 +6648,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Valuator)) {
|
||||
- data.valuator.emplace();
|
||||
+ data.valuator = Input::DeviceClass::Valuator{};
|
||||
auto& number = (*data.valuator).number;
|
||||
auto& label = (*data.valuator).label;
|
||||
auto& min = (*data.valuator).min;
|
||||
@@ -6711,7 +6711,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
Pad(&buf, 3);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Scroll)) {
|
||||
- data.scroll.emplace();
|
||||
+ data.scroll = Input::DeviceClass::Scroll{};
|
||||
auto& number = (*data.scroll).number;
|
||||
auto& scroll_type = (*data.scroll).scroll_type;
|
||||
auto& flags = (*data.scroll).flags;
|
||||
@@ -6746,7 +6746,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
}
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Touch)) {
|
||||
- data.touch.emplace();
|
||||
+ data.touch = Input::DeviceClass::Touch{};
|
||||
auto& mode = (*data.touch).mode;
|
||||
auto& num_touches = (*data.touch).num_touches;
|
||||
|
||||
@@ -6759,7 +6759,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
|
||||
Read(&num_touches, &buf);
|
||||
}
|
||||
if (CaseEq(data_expr, Input::DeviceClassType::Gesture)) {
|
||||
- data.gesture.emplace();
|
||||
+ data.gesture = Input::DeviceClass::Gesture{};
|
||||
auto& num_touches = (*data.gesture).num_touches;
|
||||
|
||||
// num_touches
|
||||
diff -up chromium-126.0.6478.26/ui/gfx/x/generated_protos/xkb.cc.system-libstdc++ chromium-126.0.6478.26/ui/gfx/x/generated_protos/xkb.cc
|
||||
--- chromium-126.0.6478.26/ui/gfx/x/generated_protos/xkb.cc.system-libstdc++ 2024-05-29 18:02:32.000000000 +0200
|
||||
+++ chromium-126.0.6478.26/ui/gfx/x/generated_protos/xkb.cc 2024-06-02 23:51:25.570917345 +0200
|
||||
@@ -2344,7 +2344,7 @@ std::unique_ptr<Xkb::GetMapReply> detail
|
||||
// map
|
||||
auto map_expr = present;
|
||||
if (CaseAnd(map_expr, Xkb::MapPart::KeyTypes)) {
|
||||
- map.types_rtrn.emplace();
|
||||
+ map.types_rtrn = std::vector<Xkb::KeyType>{};
|
||||
auto& types_rtrn = *map.types_rtrn;
|
||||
|
||||
// types_rtrn
|
||||
@@ -5207,7 +5207,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::Types) ||
|
||||
CaseAnd(replies_expr, Xkb::GBNDetail::ClientSymbols) ||
|
||||
CaseAnd(replies_expr, Xkb::GBNDetail::ServerSymbols)) {
|
||||
- replies.types.emplace();
|
||||
+ replies.types = Xkb::GetKbdByNameReply::Types{};
|
||||
auto& getmap_type = (*replies.types).getmap_type;
|
||||
auto& typeDeviceID = (*replies.types).typeDeviceID;
|
||||
auto& getmap_sequence = (*replies.types).getmap_sequence;
|
||||
@@ -5626,7 +5626,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
}
|
||||
}
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::CompatMap)) {
|
||||
- replies.compat_map.emplace();
|
||||
+ replies.compat_map = Xkb::GetKbdByNameReply::CompatMap{};
|
||||
auto& compatmap_type = (*replies.compat_map).compatmap_type;
|
||||
auto& compatDeviceID = (*replies.compat_map).compatDeviceID;
|
||||
auto& compatmap_sequence = (*replies.compat_map).compatmap_sequence;
|
||||
@@ -5747,7 +5747,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
}
|
||||
}
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::IndicatorMaps)) {
|
||||
- replies.indicator_maps.emplace();
|
||||
+ replies.indicator_maps = Xkb::GetKbdByNameReply::IndicatorMaps{};
|
||||
auto& indicatormap_type = (*replies.indicator_maps).indicatormap_type;
|
||||
auto& indicatorDeviceID = (*replies.indicator_maps).indicatorDeviceID;
|
||||
auto& indicatormap_sequence =
|
||||
@@ -5840,7 +5840,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
}
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::KeyNames) ||
|
||||
CaseAnd(replies_expr, Xkb::GBNDetail::OtherNames)) {
|
||||
- replies.key_names.emplace();
|
||||
+ replies.key_names = Xkb::GetKbdByNameReply::KeyNames{};
|
||||
auto& keyname_type = (*replies.key_names).keyname_type;
|
||||
auto& keyDeviceID = (*replies.key_names).keyDeviceID;
|
||||
auto& keyname_sequence = (*replies.key_names).keyname_sequence;
|
||||
@@ -6087,7 +6087,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
|
||||
}
|
||||
}
|
||||
if (CaseAnd(replies_expr, Xkb::GBNDetail::Geometry)) {
|
||||
- replies.geometry.emplace();
|
||||
+ replies.geometry = Xkb::GetKbdByNameReply::Geometry{};
|
||||
auto& geometry_type = (*replies.geometry).geometry_type;
|
||||
auto& geometryDeviceID = (*replies.geometry).geometryDeviceID;
|
||||
auto& geometry_sequence = (*replies.geometry).geometry_sequence;
|
Loading…
Reference in new issue