22 changed files with 157 additions and 4894 deletions
@ -1,24 +0,0 @@ |
|||
diff -up chromium-78.0.3904.70/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h.gcc9 chromium-78.0.3904.70/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h
|
|||
--- chromium-78.0.3904.70/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h.gcc9 2019-10-23 08:58:16.153251961 -0400
|
|||
+++ chromium-78.0.3904.70/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2019-10-23 08:58:36.896862347 -0400
|
|||
@@ -1486,7 +1486,7 @@ struct kernel_stat {
|
|||
"d"(LSS_SYSCALL_ARG(parent_tidptr)), |
|||
"r"(LSS_SYSCALL_ARG(newtls)), |
|||
"r"(LSS_SYSCALL_ARG(child_tidptr)) |
|||
- : "rsp", "memory", "r8", "r10", "r11", "rcx");
|
|||
+ : "memory", "r8", "r10", "r11", "rcx");
|
|||
} |
|||
LSS_RETURN(int, __res); |
|||
} |
|||
diff -up chromium-78.0.3904.70/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h.gcc9 chromium-78.0.3904.70/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h
|
|||
--- chromium-78.0.3904.70/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h.gcc9 2019-10-23 08:58:59.623435488 -0400
|
|||
+++ chromium-78.0.3904.70/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h 2019-10-23 08:59:16.113125772 -0400
|
|||
@@ -1485,7 +1485,7 @@ struct kernel_stat {
|
|||
"d"(LSS_SYSCALL_ARG(parent_tidptr)), |
|||
"r"(LSS_SYSCALL_ARG(newtls)), |
|||
"r"(LSS_SYSCALL_ARG(child_tidptr)) |
|||
- : "rsp", "memory", "r8", "r10", "r11", "rcx");
|
|||
+ : "memory", "r8", "r10", "r11", "rcx");
|
|||
} |
|||
LSS_RETURN(int, __res); |
|||
} |
@ -1,141 +0,0 @@ |
|||
diff -up chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc.fstatfix chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
|
|||
--- chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc.fstatfix 2021-04-16 15:35:53.869542483 -0400
|
|||
+++ chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc 2021-04-16 15:38:19.754688717 -0400
|
|||
@@ -269,6 +269,18 @@ ResultExpr EvaluateSyscallImpl(int fs_de
|
|||
return Allow(); |
|||
} |
|||
|
|||
+#if defined(__NR_newfstatat)
|
|||
+ if (sysno == __NR_newfstatat) {
|
|||
+ return RewriteFstatatSIGSYS();
|
|||
+ }
|
|||
+#endif
|
|||
+
|
|||
+#if defined(__NR_fstatat64)
|
|||
+ if (sysno == __NR_fstatat64) {
|
|||
+ return RewriteFstatatSIGSYS();
|
|||
+ }
|
|||
+#endif
|
|||
+
|
|||
if (SyscallSets::IsFileSystem(sysno) || |
|||
SyscallSets::IsCurrentDirectory(sysno)) { |
|||
return Error(fs_denied_errno); |
|||
diff -up chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc.fstatfix chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
|
|||
--- chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc.fstatfix 2021-04-14 14:41:08.000000000 -0400
|
|||
+++ chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc 2021-04-16 15:35:53.869542483 -0400
|
|||
@@ -6,6 +6,8 @@
|
|||
|
|||
#include "sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h" |
|||
|
|||
+#include <errno.h>
|
|||
+#include <fcntl.h>
|
|||
#include <stddef.h> |
|||
#include <stdint.h> |
|||
#include <string.h> |
|||
@@ -355,6 +357,35 @@ intptr_t SIGSYSSchedHandler(const struct
|
|||
return -ENOSYS; |
|||
} |
|||
|
|||
+intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args,
|
|||
+ void* aux) {
|
|||
+ switch (args.nr) {
|
|||
+#if defined(__NR_newfstatat)
|
|||
+ case __NR_newfstatat:
|
|||
+#endif
|
|||
+#if defined(__NR_fstatat64)
|
|||
+ case __NR_fstatat64:
|
|||
+#endif
|
|||
+#if defined(__NR_newfstatat) || defined(__NR_fstatat64)
|
|||
+ if (*reinterpret_cast<const char *>(args.args[1]) == '\0'
|
|||
+ && args.args[3] == static_cast<uint64_t>(AT_EMPTY_PATH)) {
|
|||
+ return sandbox::sys_fstat64(static_cast<int>(args.args[0]),
|
|||
+ reinterpret_cast<struct stat64 *>(args.args[2]));
|
|||
+ } else {
|
|||
+ errno = EACCES;
|
|||
+ return -1;
|
|||
+ }
|
|||
+ break;
|
|||
+#endif
|
|||
+ }
|
|||
+
|
|||
+ CrashSIGSYS_Handler(args, aux);
|
|||
+
|
|||
+ // Should never be reached.
|
|||
+ RAW_CHECK(false);
|
|||
+ return -ENOSYS;
|
|||
+}
|
|||
+
|
|||
bpf_dsl::ResultExpr CrashSIGSYS() { |
|||
return bpf_dsl::Trap(CrashSIGSYS_Handler, NULL); |
|||
} |
|||
@@ -387,6 +418,10 @@ bpf_dsl::ResultExpr RewriteSchedSIGSYS()
|
|||
return bpf_dsl::Trap(SIGSYSSchedHandler, NULL); |
|||
} |
|||
|
|||
+bpf_dsl::ResultExpr RewriteFstatatSIGSYS() {
|
|||
+ return bpf_dsl::Trap(SIGSYSFstatatHandler, NULL);
|
|||
+}
|
|||
+
|
|||
void AllocateCrashKeys() { |
|||
#if !defined(OS_NACL_NONSFI) |
|||
if (seccomp_crash_key) |
|||
diff -up chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h.fstatfix chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h
|
|||
--- chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h.fstatfix 2021-04-14 14:41:08.000000000 -0400
|
|||
+++ chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h 2021-04-16 15:35:53.869542483 -0400
|
|||
@@ -62,6 +62,10 @@ SANDBOX_EXPORT intptr_t SIGSYSPtraceFail
|
|||
// sched_setparam(), sched_setscheduler() |
|||
SANDBOX_EXPORT intptr_t SIGSYSSchedHandler(const arch_seccomp_data& args, |
|||
void* aux); |
|||
+// If the fstatat syscall is actually a disguised fstat, calls the regular fstat
|
|||
+// syscall, otherwise, crashes in the same way as CrashSIGSYS_Handler.
|
|||
+SANDBOX_EXPORT intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args,
|
|||
+ void* aux);
|
|||
|
|||
// Variants of the above functions for use with bpf_dsl. |
|||
SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYS(); |
|||
@@ -72,6 +76,7 @@ SANDBOX_EXPORT bpf_dsl::ResultExpr Crash
|
|||
SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSFutex(); |
|||
SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSPtrace(); |
|||
SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteSchedSIGSYS(); |
|||
+SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteFstatatSIGSYS();
|
|||
|
|||
// Allocates a crash key so that Seccomp information can be recorded. |
|||
void AllocateCrashKeys(); |
|||
diff -up chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.cc.fstatfix chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.cc
|
|||
--- chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.cc.fstatfix 2021-04-14 14:41:08.000000000 -0400
|
|||
+++ chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.cc 2021-04-16 15:35:53.869542483 -0400
|
|||
@@ -261,4 +261,13 @@ int sys_sigaction(int signum,
|
|||
|
|||
#endif // defined(MEMORY_SANITIZER) |
|||
|
|||
+SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf)
|
|||
+{
|
|||
+#if defined(__NR_fstat64)
|
|||
+ return syscall(__NR_fstat64, fd, buf);
|
|||
+#else
|
|||
+ return syscall(__NR_fstat, fd, buf);
|
|||
+#endif
|
|||
+}
|
|||
+
|
|||
} // namespace sandbox |
|||
diff -up chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.h.fstatfix chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.h
|
|||
--- chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.h.fstatfix 2021-04-14 14:41:08.000000000 -0400
|
|||
+++ chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.h 2021-04-16 15:35:53.870542491 -0400
|
|||
@@ -17,6 +17,7 @@ struct sock_fprog;
|
|||
struct rlimit64; |
|||
struct cap_hdr; |
|||
struct cap_data; |
|||
+struct stat64;
|
|||
|
|||
namespace sandbox { |
|||
|
|||
@@ -84,6 +85,9 @@ SANDBOX_EXPORT int sys_sigaction(int sig
|
|||
const struct sigaction* act, |
|||
struct sigaction* oldact); |
|||
|
|||
+// Recent glibc rewrites fstat to fstatat.
|
|||
+SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf);
|
|||
+
|
|||
} // namespace sandbox |
|||
|
|||
#endif // SANDBOX_LINUX_SERVICES_SYSCALL_WRAPPERS_H_ |
File diff suppressed because it is too large
@ -1,30 +0,0 @@ |
|||
From 2f5514051210388bfcff605570d33f08cfa7bcaa Mon Sep 17 00:00:00 2001 |
|||
From: Jose Dapena Paz <[email protected]> |
|||
Date: Wed, 21 Jul 2021 08:34:58 +0000 |
|||
Subject: [PATCH] IWYU: usage of unique_ptr requires including <memory> in bluetooth low energy scan filter. |
|||
|
|||
Fix build because of missing include: |
|||
../../device/bluetooth/bluetooth_low_energy_scan_filter.h:57:15: error: ‘unique_ptr’ in namespace ‘std’ does not name a template type |
|||
57 | static std::unique_ptr<BluetoothLowEnergyScanFilter> Create( |
|||
| ^~~~~~~~~~ |
|||
|
|||
Bug: 819294 |
|||
Change-Id: I347953a083f1bcdf744fd86e1a73954c6f86b32e |
|||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041155 |
|||
Reviewed-by: Reilly Grant <[email protected]> |
|||
Commit-Queue: José Dapena Paz <[email protected]> |
|||
Cr-Commit-Position: refs/heads/[email protected]{#903819} |
|||
---
|
|||
|
|||
diff --git a/device/bluetooth/bluetooth_low_energy_scan_filter.h b/device/bluetooth/bluetooth_low_energy_scan_filter.h
|
|||
index a0436c1..7ae606c 100644
|
|||
--- a/device/bluetooth/bluetooth_low_energy_scan_filter.h
|
|||
+++ b/device/bluetooth/bluetooth_low_energy_scan_filter.h
|
|||
@@ -7,6 +7,7 @@
|
|||
|
|||
#include <stddef.h> |
|||
#include <stdint.h> |
|||
+#include <memory>
|
|||
#include <vector> |
|||
|
|||
#include "base/time/time.h" |
@ -1,30 +0,0 @@ |
|||
From 8ae99ee447cf5f0160ea4ae978cdf37f5dcecd1e Mon Sep 17 00:00:00 2001 |
|||
From: Jose Dapena Paz <[email protected]> |
|||
Date: Wed, 21 Jul 2021 08:36:20 +0000 |
|||
Subject: [PATCH] IWYU: missing memory include for unique_ptr usage in class_property.h |
|||
|
|||
Fix GCC build breakage because of missing inclide: |
|||
./../ui/base/class_property.h:120:58: error: ‘std::unique_ptr’ has not been declared |
|||
120 | T* SetProperty(const ClassProperty<T*>* property, std::unique_ptr<T> value); |
|||
| ^~~~~~~~~~ |
|||
|
|||
Bug: 819294 |
|||
Change-Id: I46b921876702b8d44674689bbb5acdc107db21e5 |
|||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041030 |
|||
Reviewed-by: Peter Boström <[email protected]> |
|||
Commit-Queue: José Dapena Paz <[email protected]> |
|||
Cr-Commit-Position: refs/heads/[email protected]{#903820} |
|||
---
|
|||
|
|||
diff --git a/ui/base/class_property.h b/ui/base/class_property.h
|
|||
index f7b2f55..88b4938 100644
|
|||
--- a/ui/base/class_property.h
|
|||
+++ b/ui/base/class_property.h
|
|||
@@ -8,6 +8,7 @@
|
|||
#include <stdint.h> |
|||
|
|||
#include <map> |
|||
+#include <memory>
|
|||
#include <set> |
|||
#include <type_traits> |
|||
|
@ -1,47 +0,0 @@ |
|||
From 7108f83c8ad1bad4072e4f32da3db6d59cf51400 Mon Sep 17 00:00:00 2001 |
|||
From: Ivan Murashov <[email protected]> |
|||
Date: Tue, 20 Jul 2021 13:16:44 +0300 |
|||
Subject: [PATCH] GCC: Remove double declaration of ContextSet |
|||
|
|||
After the CL |
|||
https://chromium-review.googlesource.com/c/angle/angle/+/2965780 |
|||
the build with GCC failed with error: |
|||
/third_party/angle/src/libANGLE/Display.h:325:37: error: declaration of |
|||
'typedef class std::__1::set<gl::Context*> egl::Display::ContextSet' |
|||
changes meaning of 'ContextSet' [-fpermissive] |
|||
/third_party/angle/src/libANGLE/Display.h:75:7: note: 'ContextSet' |
|||
declared here as 'using ContextSet = class std::__1::set<gl::Context*>' |
|||
|
|||
To fix the error the double declaration of ContextSet is removed. |
|||
|
|||
Bug: angleproject:5878, chromium:819294 |
|||
Change-Id: Id9e52061af53ea18dd5d13b960daaa67a14f61ca |
|||
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3038804 |
|||
Reviewed-by: Jamie Madill <[email protected]> |
|||
Commit-Queue: Jamie Madill <[email protected]> |
|||
---
|
|||
|
|||
diff --git a/third_party/angle/CONTRIBUTORS b/third_party/angle/CONTRIBUTORS
|
|||
index 887ddc2..94b1b4d 100644
|
|||
--- a/third_party/angle/CONTRIBUTORS
|
|||
+++ b/third_party/angle/CONTRIBUTORS
|
|||
@@ -154,6 +154,7 @@
|
|||
|
|||
LG Electronics, Inc. |
|||
Jani Hautakangas |
|||
+ Ivan Murashov
|
|||
|
|||
IBM Inc. |
|||
Junliang Yan |
|||
diff --git a/third_party/angle/src/libANGLE/Display.h b/third_party/angle/src/libANGLE/Display.h
|
|||
index f33123b..f0c0910 100644
|
|||
--- a/third_party/angle/src/libANGLE/Display.h
|
|||
+++ b/third_party/angle/src/libANGLE/Display.h
|
|||
@@ -322,7 +322,6 @@
|
|||
|
|||
ConfigSet mConfigSet; |
|||
|
|||
- typedef std::set<gl::Context *> ContextSet;
|
|||
ContextSet mContextSet; |
|||
|
|||
typedef std::set<Image *> ImageSet; |
@ -1,24 +0,0 @@ |
|||
From 409859ad9ba763a4267fb3457df7cd8eb0b7387b Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Sun, 25 Jul 2021 19:43:45 +0000 |
|||
Subject: [PATCH] IWYU: add vector for std::vector |
|||
|
|||
---
|
|||
chrome/browser/devtools/devtools_embedder_message_dispatcher.h | 1 + |
|||
1 file changed, 1 insertion(+) |
|||
|
|||
diff --git a/chrome/browser/devtools/devtools_embedder_message_dispatcher.h b/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
|
|||
index 12f8500..4007112 100644
|
|||
--- a/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
|
|||
+++ b/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
|
|||
@@ -8,6 +8,7 @@
|
|||
#include <map> |
|||
#include <memory> |
|||
#include <string> |
|||
+#include <vector>
|
|||
|
|||
#include "base/callback.h" |
|||
#include "ui/gfx/geometry/insets.h" |
|||
--
|
|||
2.31.1 |
|||
|
@ -1,49 +0,0 @@ |
|||
From 802150d7be94e5317b257df545d55ce5b007ae65 Mon Sep 17 00:00:00 2001 |
|||
From: Jose Dapena Paz <[email protected]> |
|||
Date: Tue, 20 Jul 2021 18:50:11 +0000 |
|||
Subject: [PATCH] libstdc++: do not use unique_ptr bool() operator in a constexpr in form_forest.h |
|||
|
|||
Fix build breakage in GCC, because of calling non constexpr functions from a |
|||
constexpr function. In this case, libstdc++ unique_ptr bool() operator is not |
|||
constexpr, so it cannot be used inside CompareByFrameToken. |
|||
|
|||
An example of build breakage caused by this: |
|||
../../components/autofill/content/browser/form_forest.h:157:21: error: call to non-‘constexpr’ function ‘std::unique_ptr<_Tp, _Dp>::operator bool() const [with _Tp = autofill::internal::FormForest::FrameData; _Dp = std::default_delete<autofill::internal::FormForest::FrameData>]’ |
|||
157 | return f && g ? f->frame_token < g->frame_token : f.get() < g.get(); |
|||
| ^ |
|||
|
|||
Bug: 957519 |
|||
Change-Id: I3c49559084fe58886a03520729873b7c4ac89bbf |
|||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041050 |
|||
Commit-Queue: Dominic Battré <[email protected]> |
|||
Reviewed-by: Dominic Battré <[email protected]> |
|||
Cr-Commit-Position: refs/heads/[email protected]{#903595} |
|||
---
|
|||
|
|||
diff --git a/components/autofill/content/browser/form_forest.h b/components/autofill/content/browser/form_forest.h
|
|||
index c89a8eb..f414ab8 100644
|
|||
--- a/components/autofill/content/browser/form_forest.h
|
|||
+++ b/components/autofill/content/browser/form_forest.h
|
|||
@@ -152,16 +152,16 @@
|
|||
// used by FrameData sets. |
|||
struct CompareByFrameToken { |
|||
using is_transparent = void; |
|||
- constexpr bool operator()(const std::unique_ptr<FrameData>& f,
|
|||
- const std::unique_ptr<FrameData>& g) const {
|
|||
+ bool operator()(const std::unique_ptr<FrameData>& f,
|
|||
+ const std::unique_ptr<FrameData>& g) const {
|
|||
return f && g ? f->frame_token < g->frame_token : f.get() < g.get(); |
|||
} |
|||
- constexpr bool operator()(const std::unique_ptr<FrameData>& f,
|
|||
- const LocalFrameToken& g) const {
|
|||
+ bool operator()(const std::unique_ptr<FrameData>& f,
|
|||
+ const LocalFrameToken& g) const {
|
|||
return f ? f->frame_token < g : true; |
|||
} |
|||
- constexpr bool operator()(const LocalFrameToken& f,
|
|||
- const std::unique_ptr<FrameData>& g) const {
|
|||
+ bool operator()(const LocalFrameToken& f,
|
|||
+ const std::unique_ptr<FrameData>& g) const {
|
|||
return g ? f < g->frame_token : false; |
|||
} |
|||
}; |
@ -1,30 +0,0 @@ |
|||
From 17d0e3dfcd0690df0e7b212fedcb95402f16935d Mon Sep 17 00:00:00 2001 |
|||
From: Jose Dapena Paz <[email protected]> |
|||
Date: Fri, 23 Jul 2021 10:17:49 +0000 |
|||
Subject: [PATCH] IWYU: missing include for using std::vector in hash password manager. |
|||
|
|||
Fix build breakage: |
|||
../../components/password_manager/core/browser/hash_password_manager.h:44:8: error: ‘vector’ in namespace ‘std’ does not name a template type |
|||
44 | std::vector<PasswordHashData> RetrieveAllPasswordHashes(); |
|||
| ^~~~~~ |
|||
|
|||
Bug: 819294 |
|||
Change-Id: I8c8a4ec3972eedb87a312c5ec56adf4a21b1b2a2 |
|||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041046 |
|||
Commit-Queue: Vasilii Sukhanov <[email protected]> |
|||
Reviewed-by: Vasilii Sukhanov <[email protected]> |
|||
Cr-Commit-Position: refs/heads/[email protected]{#904696} |
|||
---
|
|||
|
|||
diff --git a/components/password_manager/core/browser/hash_password_manager.h b/components/password_manager/core/browser/hash_password_manager.h
|
|||
index c762c5a..85e656ed 100644
|
|||
--- a/components/password_manager/core/browser/hash_password_manager.h
|
|||
+++ b/components/password_manager/core/browser/hash_password_manager.h
|
|||
@@ -6,6 +6,7 @@
|
|||
#define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_HASH_PASSWORD_MANAGER_H_ |
|||
|
|||
#include <string> |
|||
+#include <vector>
|
|||
|
|||
#include "base/callback.h" |
|||
#include "base/callback_list.h" |
@ -1,24 +0,0 @@ |
|||
From 92fc089d50fc81b9903cd0573c95749e41081474 Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Sun, 25 Jul 2021 21:38:26 +0000 |
|||
Subject: [PATCH] IWYU: add cstring for std::strcpy |
|||
|
|||
---
|
|||
extensions/browser/extension_dialog_auto_confirm.cc | 1 + |
|||
1 file changed, 1 insertion(+) |
|||
|
|||
diff --git a/extensions/browser/extension_dialog_auto_confirm.cc b/extensions/browser/extension_dialog_auto_confirm.cc
|
|||
index adb4ac3..be8b161 100644
|
|||
--- a/extensions/browser/extension_dialog_auto_confirm.cc
|
|||
+++ b/extensions/browser/extension_dialog_auto_confirm.cc
|
|||
@@ -4,6 +4,7 @@
|
|||
|
|||
#include "extensions/browser/extension_dialog_auto_confirm.h" |
|||
|
|||
+#include <cstring>
|
|||
#include <utility> |
|||
|
|||
#include "base/check.h" |
|||
--
|
|||
2.31.1 |
|||
|
@ -1,117 +0,0 @@ |
|||
From 7a6289c5ace52cf88f0e19caa5f78b7c15d0e7a6 Mon Sep 17 00:00:00 2001 |
|||
From: Miklos Vajna <[email protected]> |
|||
Date: Wed, 21 Jul 2021 17:42:30 +0000 |
|||
Subject: [PATCH] fxcodec, fxge: fix missing includes with libstdc++ |
|||
|
|||
These missing includes break the build with gcc/libstdc++, they were not |
|||
a problem in practice with clang/libc++. |
|||
|
|||
Change-Id: I40013f97ba7ab06f32aa59f87b04aec06a19478c |
|||
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/83210 |
|||
Commit-Queue: Lei Zhang <[email protected]> |
|||
Reviewed-by: Lei Zhang <[email protected]> |
|||
---
|
|||
|
|||
diff --git a/third_party/pdfium/core/fxcodec/jpeg/jpegmodule.cpp b/third_party/pdfium/core/fxcodec/jpeg/jpegmodule.cpp
|
|||
index cea0679..036f250 100644
|
|||
--- a/third_party/pdfium/core/fxcodec/jpeg/jpegmodule.cpp
|
|||
+++ b/third_party/pdfium/core/fxcodec/jpeg/jpegmodule.cpp
|
|||
@@ -7,6 +7,7 @@
|
|||
#include "core/fxcodec/jpeg/jpegmodule.h" |
|||
|
|||
#include <setjmp.h> |
|||
+#include <string.h>
|
|||
|
|||
#include <memory> |
|||
#include <utility> |
|||
diff --git a/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp b/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
|
|||
index c66985a..9c1122b 100644
|
|||
--- a/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
|
|||
+++ b/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
|
|||
@@ -6,6 +6,8 @@
|
|||
|
|||
#include "core/fxcodec/jpx/cjpx_decoder.h" |
|||
|
|||
+#include <string.h>
|
|||
+
|
|||
#include <algorithm> |
|||
#include <limits> |
|||
#include <utility> |
|||
diff --git a/third_party/pdfium/core/fxge/cfx_cliprgn.cpp b/third_party/pdfium/core/fxge/cfx_cliprgn.cpp
|
|||
index 5369d52..d198852 100644
|
|||
--- a/third_party/pdfium/core/fxge/cfx_cliprgn.cpp
|
|||
+++ b/third_party/pdfium/core/fxge/cfx_cliprgn.cpp
|
|||
@@ -6,6 +6,8 @@
|
|||
|
|||
#include "core/fxge/cfx_cliprgn.h" |
|||
|
|||
+#include <string.h>
|
|||
+
|
|||
#include <utility> |
|||
|
|||
#include "core/fxge/dib/cfx_dibitmap.h" |
|||
diff --git a/third_party/pdfium/core/fxge/dib/cfx_bitmapcomposer.cpp b/third_party/pdfium/core/fxge/dib/cfx_bitmapcomposer.cpp
|
|||
index 6f9b420..0f1ffae 100644
|
|||
--- a/third_party/pdfium/core/fxge/dib/cfx_bitmapcomposer.cpp
|
|||
+++ b/third_party/pdfium/core/fxge/dib/cfx_bitmapcomposer.cpp
|
|||
@@ -6,6 +6,8 @@
|
|||
|
|||
#include "core/fxge/dib/cfx_bitmapcomposer.h" |
|||
|
|||
+#include <string.h>
|
|||
+
|
|||
#include "core/fxge/cfx_cliprgn.h" |
|||
#include "core/fxge/dib/cfx_dibitmap.h" |
|||
|
|||
diff --git a/third_party/pdfium/core/fxge/dib/cfx_bitmapstorer.cpp b/third_party/pdfium/core/fxge/dib/cfx_bitmapstorer.cpp
|
|||
index f57c00e..45a0a18 100644
|
|||
--- a/third_party/pdfium/core/fxge/dib/cfx_bitmapstorer.cpp
|
|||
+++ b/third_party/pdfium/core/fxge/dib/cfx_bitmapstorer.cpp
|
|||
@@ -6,6 +6,8 @@
|
|||
|
|||
#include "core/fxge/dib/cfx_bitmapstorer.h" |
|||
|
|||
+#include <string.h>
|
|||
+
|
|||
#include <utility> |
|||
|
|||
#include "core/fxge/dib/cfx_dibitmap.h" |
|||
diff --git a/third_party/pdfium/core/fxge/dib/cfx_dibbase.cpp b/third_party/pdfium/core/fxge/dib/cfx_dibbase.cpp
|
|||
index 4ec0ddb..a1de2fb 100644
|
|||
--- a/third_party/pdfium/core/fxge/dib/cfx_dibbase.cpp
|
|||
+++ b/third_party/pdfium/core/fxge/dib/cfx_dibbase.cpp
|
|||
@@ -6,6 +6,8 @@
|
|||
|
|||
#include "core/fxge/dib/cfx_dibbase.h" |
|||
|
|||
+#include <string.h>
|
|||
+
|
|||
#include <algorithm> |
|||
#include <memory> |
|||
#include <utility> |
|||
diff --git a/third_party/pdfium/core/fxge/dib/cfx_dibitmap.cpp b/third_party/pdfium/core/fxge/dib/cfx_dibitmap.cpp
|
|||
index d7ccf6c..94e8acc 100644
|
|||
--- a/third_party/pdfium/core/fxge/dib/cfx_dibitmap.cpp
|
|||
+++ b/third_party/pdfium/core/fxge/dib/cfx_dibitmap.cpp
|
|||
@@ -6,6 +6,8 @@
|
|||
|
|||
#include "core/fxge/dib/cfx_dibitmap.h" |
|||
|
|||
+#include <string.h>
|
|||
+
|
|||
#include <limits> |
|||
#include <memory> |
|||
#include <utility> |
|||
diff --git a/third_party/pdfium/core/fxge/dib/cfx_scanlinecompositor.cpp b/third_party/pdfium/core/fxge/dib/cfx_scanlinecompositor.cpp
|
|||
index e8362d7..c04c6dc 100644
|
|||
--- a/third_party/pdfium/core/fxge/dib/cfx_scanlinecompositor.cpp
|
|||
+++ b/third_party/pdfium/core/fxge/dib/cfx_scanlinecompositor.cpp
|
|||
@@ -6,6 +6,8 @@
|
|||
|
|||
#include "core/fxge/dib/cfx_scanlinecompositor.h" |
|||
|
|||
+#include <string.h>
|
|||
+
|
|||
#include <algorithm> |
|||
|
|||
#include "core/fxge/dib/fx_dib.h" |
@ -1,21 +0,0 @@ |
|||
diff -up chromium-93.0.4577.63/remoting/host/remote_open_url_client.cc.remoting-nodestructor-fix chromium-93.0.4577.63/remoting/host/remote_open_url_client.cc
|
|||
--- chromium-93.0.4577.63/remoting/host/remote_open_url_client.cc.remoting-nodestructor-fix 2021-09-03 17:30:44.162605313 +0000
|
|||
+++ chromium-93.0.4577.63/remoting/host/remote_open_url_client.cc 2021-09-03 17:31:01.017986003 +0000
|
|||
@@ -56,7 +56,7 @@ void ShowMessageDialog(const std::string
|
|||
} |
|||
|
|||
bool IsBrowserValid(const std::string& browser) { |
|||
- static const base::NoDestructor<base::flat_set<std::string>> invalid_browsers(
|
|||
+ static const base::NoDestructor<base::flat_set<std::string>> invalid_browsers{
|
|||
{ |
|||
// This is the chromoting forwarder itself. |
|||
"crd-url-forwarder.desktop", |
|||
@@ -64,7 +64,7 @@ bool IsBrowserValid(const std::string& b
|
|||
// XFCE's forwarder. May potentially launch the chromoting forwarder |
|||
// recursively. |
|||
"xfce4-web-browser.desktop", |
|||
- });
|
|||
+ }};
|
|||
if (browser.empty()) { |
|||
return false; |
|||
} |
@ -1,97 +0,0 @@ |
|||
diff -up chromium-93.0.4577.82/components/paint_preview/common/subset_font.cc.hbfix chromium-93.0.4577.82/components/paint_preview/common/subset_font.cc
|
|||
--- chromium-93.0.4577.82/components/paint_preview/common/subset_font.cc.hbfix 2021-09-20 11:37:58.633517817 -0400
|
|||
+++ chromium-93.0.4577.82/components/paint_preview/common/subset_font.cc 2021-09-20 11:40:12.111235467 -0400
|
|||
@@ -72,9 +72,11 @@ sk_sp<SkData> SubsetFont(SkTypeface* typ
|
|||
hb_set_t* glyphs = |
|||
hb_subset_input_glyph_set(input.get()); // Owned by |input|. |
|||
usage.ForEach(base::BindRepeating(&AddGlyphs, base::Unretained(glyphs))); |
|||
- hb_subset_input_set_retain_gids(input.get(), true);
|
|||
+ hb_subset_input_set_flags(input.get(), HB_SUBSET_FLAGS_RETAIN_GIDS);
|
|||
|
|||
- HbScoped<hb_face_t> subset_face(hb_subset(face.get(), input.get()));
|
|||
+ HbScoped<hb_face_t> subset_face(hb_subset_or_fail(face.get(), input.get()));
|
|||
+ if (!subset_face)
|
|||
+ return nullptr;
|
|||
HbScoped<hb_blob_t> subset_blob(hb_face_reference_blob(subset_face.get())); |
|||
if (!subset_blob) |
|||
return nullptr; |
|||
diff -up chromium-93.0.4577.82/third_party/skia/gn/skia.gni.hbfix chromium-93.0.4577.82/third_party/skia/gn/skia.gni
|
|||
--- chromium-93.0.4577.82/third_party/skia/gn/skia.gni.hbfix 2021-09-20 11:41:20.078600944 -0400
|
|||
+++ chromium-93.0.4577.82/third_party/skia/gn/skia.gni 2021-09-20 11:42:29.851976086 -0400
|
|||
@@ -33,8 +33,6 @@ declare_args() {
|
|||
skia_include_multiframe_procs = false |
|||
skia_lex = false |
|||
skia_libgifcodec_path = "third_party/externals/libgifcodec" |
|||
- skia_pdf_subset_harfbuzz =
|
|||
- false # TODO: set skia_pdf_subset_harfbuzz to skia_use_harfbuzz.
|
|||
skia_qt_path = getenv("QT_PATH") |
|||
skia_skqp_global_error_tolerance = 0 |
|||
skia_tools_require_resources = false |
|||
@@ -99,6 +97,10 @@ declare_args() {
|
|||
} |
|||
|
|||
declare_args() { |
|||
+ skia_pdf_subset_harfbuzz = skia_use_harfbuzz
|
|||
+}
|
|||
+
|
|||
+declare_args() {
|
|||
skia_compile_sksl_tests = skia_compile_processors |
|||
skia_enable_fontmgr_android = skia_use_expat && skia_use_freetype |
|||
skia_enable_fontmgr_custom_directory = skia_use_freetype && !is_fuchsia |
|||
diff -up chromium-93.0.4577.82/third_party/skia/src/pdf/SkPDFSubsetFont.cpp.hbfix chromium-93.0.4577.82/third_party/skia/src/pdf/SkPDFSubsetFont.cpp
|
|||
--- chromium-93.0.4577.82/third_party/skia/src/pdf/SkPDFSubsetFont.cpp.hbfix 2021-09-20 13:34:57.861369449 -0400
|
|||
+++ chromium-93.0.4577.82/third_party/skia/src/pdf/SkPDFSubsetFont.cpp 2021-09-20 13:38:28.063504311 -0400
|
|||
@@ -49,6 +49,37 @@ static sk_sp<SkData> to_data(HBBlob blob
|
|||
blob.release()); |
|||
} |
|||
|
|||
+template<typename...> using void_t = void;
|
|||
+template<typename T, typename = void>
|
|||
+struct SkPDFHarfBuzzSubset {
|
|||
+ // This is the HarfBuzz 3.0 interface.
|
|||
+ // hb_subset_flags_t does not exist in 2.0. It isn't dependent on T, so inline the value of
|
|||
+ // HB_SUBSET_FLAGS_RETAIN_GIDS until 2.0 is no longer supported.
|
|||
+ static HBFace Make(T input, hb_face_t* face) {
|
|||
+ // TODO: When possible, check if a font is 'tricky' with FT_IS_TRICKY.
|
|||
+ // If it isn't known if a font is 'tricky', retain the hints.
|
|||
+ hb_subset_input_set_flags(input, 2/*HB_SUBSET_FLAGS_RETAIN_GIDS*/);
|
|||
+ return HBFace(hb_subset_or_fail(face, input));
|
|||
+ }
|
|||
+};
|
|||
+template<typename T>
|
|||
+struct SkPDFHarfBuzzSubset<T, void_t<
|
|||
+ decltype(hb_subset_input_set_retain_gids(std::declval<T>(), std::declval<bool>())),
|
|||
+ decltype(hb_subset_input_set_drop_hints(std::declval<T>(), std::declval<bool>())),
|
|||
+ decltype(hb_subset(std::declval<hb_face_t*>(), std::declval<T>()))
|
|||
+ >>
|
|||
+{
|
|||
+ // This is the HarfBuzz 2.0 (non-public) interface, used if it exists.
|
|||
+ // This code should be removed as soon as all users are migrated to the newer API.
|
|||
+ static HBFace Make(T input, hb_face_t* face) {
|
|||
+ hb_subset_input_set_retain_gids(input, true);
|
|||
+ // TODO: When possible, check if a font is 'tricky' with FT_IS_TRICKY.
|
|||
+ // If it isn't known if a font is 'tricky', retain the hints.
|
|||
+ hb_subset_input_set_drop_hints(input, false);
|
|||
+ return HBFace(hb_subset(face, input));
|
|||
+ }
|
|||
+};
|
|||
+
|
|||
static sk_sp<SkData> subset_harfbuzz(sk_sp<SkData> fontData, |
|||
const SkPDFGlyphUse& glyphUsage, |
|||
int ttcIndex) { |
|||
@@ -71,11 +102,10 @@ static sk_sp<SkData> subset_harfbuzz(sk_
|
|||
hb_set_t* glyphs = hb_subset_input_glyph_set(input.get()); |
|||
glyphUsage.getSetValues([&glyphs](unsigned gid) { hb_set_add(glyphs, gid);}); |
|||
|
|||
- hb_subset_input_set_retain_gids(input.get(), true);
|
|||
- // TODO: When possible, check if a font is 'tricky' with FT_IS_TRICKY.
|
|||
- // If it isn't known if a font is 'tricky', retain the hints.
|
|||
- hb_subset_input_set_drop_hints(input.get(), false);
|
|||
- HBFace subset(hb_subset(face.get(), input.get()));
|
|||
+ HBFace subset = SkPDFHarfBuzzSubset<hb_subset_input_t*>::Make(input.get(), face.get());
|
|||
+ if (!subset) {
|
|||
+ return nullptr;
|
|||
+ }
|
|||
HBBlob result(hb_face_reference_blob(subset.get())); |
|||
return to_data(std::move(result)); |
|||
} |
@ -0,0 +1,31 @@ |
|||
From 45bea088d3771c7ff9f77173e451422452c031b3 Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Mon, 02 Aug 2021 16:57:05 +0000 |
|||
Subject: [PATCH] GCC: drop WARN_USED_RESULT in lambda in ConversionStorageSql |
|||
|
|||
GCC 9.3 only allows GNU attributes between [] and () in lambda |
|||
expressions. See https://gcc.gnu.org/PR90333 for details. However, |
|||
clang only allows attributes after () only. Seems not strictly |
|||
necessary to enforce the attribute here. |
|||
|
|||
Bug: 819294 |
|||
Change-Id: I342deb25239837dea0f6f5e7709b1467789e342b |
|||
---
|
|||
|
|||
diff --git a/content/browser/conversions/conversion_storage_sql.cc b/content/browser/conversions/conversion_storage_sql.cc
|
|||
index 84bc897..b6fc4e9 100644
|
|||
--- a/content/browser/conversions/conversion_storage_sql.cc
|
|||
+++ b/content/browser/conversions/conversion_storage_sql.cc
|
|||
@@ -688,9 +688,11 @@
|
|||
bool ConversionStorageSql::DeleteExpiredImpressions() { |
|||
const int kMaxDeletesPerBatch = 100; |
|||
|
|||
+ // GCC accepts attribute between [] and () only
|
|||
+ // clang accepts attribute after () only
|
|||
auto delete_impressions_from_paged_select = |
|||
[this](sql::Statement& statement) |
|||
- VALID_CONTEXT_REQUIRED(sequence_checker_) WARN_UNUSED_RESULT -> bool {
|
|||
+ VALID_CONTEXT_REQUIRED(sequence_checker_) -> bool {
|
|||
while (true) { |
|||
std::vector<int64_t> impression_ids; |
|||
while (statement.Step()) { |
@ -0,0 +1,24 @@ |
|||
From 4eeacdaa57b29a079fe09315eb22557c06aa522e Mon Sep 17 00:00:00 2001 |
|||
From: Stephan Hartmann <[email protected]> |
|||
Date: Fri, 13 Aug 2021 12:57:42 +0000 |
|||
Subject: [PATCH] IWYU: add memory for std::unique_ptr in blink::CustomSpaces |
|||
|
|||
---
|
|||
.../blink/renderer/platform/heap/v8_wrapper/custom_spaces.h | 1 + |
|||
1 file changed, 1 insertion(+) |
|||
|
|||
diff --git a/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h b/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
|
|||
index df0465a..640cb33 100644
|
|||
--- a/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
|
|||
+++ b/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
|
|||
@@ -5,6 +5,7 @@
|
|||
#ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_HEAP_V8_WRAPPER_CUSTOM_SPACES_H_ |
|||
#define THIRD_PARTY_BLINK_RENDERER_PLATFORM_HEAP_V8_WRAPPER_CUSTOM_SPACES_H_ |
|||
|
|||
+#include <memory>
|
|||
#include <vector> |
|||
|
|||
#include "third_party/blink/renderer/platform/platform_export.h" |
|||
--
|
|||
2.31.1 |
|||
|
@ -0,0 +1,12 @@ |
|||
diff -up chromium-94.0.4606.54/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h.gcc9 chromium-94.0.4606.54/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h
|
|||
--- chromium-94.0.4606.54/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h.gcc9 2021-09-20 15:13:05.000000000 -0400
|
|||
+++ chromium-94.0.4606.54/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h 2021-09-23 12:41:53.540357702 -0400
|
|||
@@ -1485,7 +1485,7 @@ struct kernel_stat {
|
|||
"d"(LSS_SYSCALL_ARG(parent_tidptr)), |
|||
"r"(LSS_SYSCALL_ARG(newtls)), |
|||
"r"(LSS_SYSCALL_ARG(child_tidptr)) |
|||
- : "rsp", "memory", "r8", "r10", "r11", "rcx");
|
|||
+ : "memory", "r8", "r10", "r11", "rcx");
|
|||
} |
|||
LSS_RETURN(int, __res); |
|||
} |
@ -0,0 +1,22 @@ |
|||
diff -up chromium-94.0.4606.54/remoting/host/remote_open_url_client.cc.remoting-nodestructor-fix chromium-94.0.4606.54/remoting/host/remote_open_url_client.cc
|
|||
diff -up chromium-94.0.4606.54/remoting/host/remote_open_url_client_delegate_linux.cc.remoting-nodestructor-fix chromium-94.0.4606.54/remoting/host/remote_open_url_client_delegate_linux.cc
|
|||
--- chromium-94.0.4606.54/remoting/host/remote_open_url_client_delegate_linux.cc.remoting-nodestructor-fix 2021-09-24 11:02:02.662082902 -0400
|
|||
+++ chromium-94.0.4606.54/remoting/host/remote_open_url_client_delegate_linux.cc 2021-09-24 11:06:05.207472179 -0400
|
|||
@@ -47,7 +47,7 @@ void ShowMessageDialog(const std::string
|
|||
} |
|||
|
|||
bool IsBrowserValid(const std::string& browser) { |
|||
- static const base::NoDestructor<base::flat_set<std::string>> invalid_browsers(
|
|||
+ static const base::NoDestructor<base::flat_set<std::string>> invalid_browsers{
|
|||
{ |
|||
// This is the chromoting forwarder itself. |
|||
"crd-url-forwarder.desktop", |
|||
@@ -55,7 +55,7 @@ bool IsBrowserValid(const std::string& b
|
|||
// XFCE's forwarder. May potentially launch the chromoting forwarder |
|||
// recursively. |
|||
"xfce4-web-browser.desktop", |
|||
- });
|
|||
+ }};
|
|||
if (browser.empty()) { |
|||
return false; |
|||
} |
@ -0,0 +1,16 @@ |
|||
diff -up chromium-94.0.4606.54/third_party/webrtc/BUILD.gn.fix-multiple-define chromium-94.0.4606.54/third_party/webrtc/BUILD.gn
|
|||
--- chromium-94.0.4606.54/third_party/webrtc/BUILD.gn.fix-multiple-define 2021-09-24 13:22:48.067565858 -0400
|
|||
+++ chromium-94.0.4606.54/third_party/webrtc/BUILD.gn 2021-09-24 13:23:10.163664830 -0400
|
|||
@@ -119,10 +119,10 @@ config("common_inherited_config") {
|
|||
ldflags = [] |
|||
|
|||
if (rtc_enable_symbol_export || is_component_build) { |
|||
- defines = [ "WEBRTC_ENABLE_SYMBOL_EXPORT" ]
|
|||
+ defines += [ "WEBRTC_ENABLE_SYMBOL_EXPORT" ]
|
|||
} |
|||
if (rtc_enable_objc_symbol_export) { |
|||
- defines = [ "WEBRTC_ENABLE_OBJC_SYMBOL_EXPORT" ]
|
|||
+ defines += [ "WEBRTC_ENABLE_OBJC_SYMBOL_EXPORT" ]
|
|||
} |
|||
|
|||
if (build_with_mozilla) { |
@ -0,0 +1,12 @@ |
|||
diff -up chromium-94.0.4606.61/remoting/host/mojom/remoting_mojom_traits.h.extra-qualification chromium-94.0.4606.61/remoting/host/mojom/remoting_mojom_traits.h
|
|||
--- chromium-94.0.4606.61/remoting/host/mojom/remoting_mojom_traits.h.extra-qualification 2021-09-25 01:48:28.812426004 +0000
|
|||
+++ chromium-94.0.4606.61/remoting/host/mojom/remoting_mojom_traits.h 2021-09-25 01:48:59.072267580 +0000
|
|||
@@ -17,7 +17,7 @@
|
|||
namespace mojo { |
|||
|
|||
template <> |
|||
-class mojo::StructTraits<remoting::mojom::ClipboardEventDataView,
|
|||
+class StructTraits<remoting::mojom::ClipboardEventDataView,
|
|||
::remoting::protocol::ClipboardEvent> { |
|||
public: |
|||
static const std::string& mime_type( |
@ -145,25 +145,23 @@ BuildRequires: libicu-devel >= 5.4 |
|||
%global bundlelibdrm 1 |
|||
%global bundlefontconfig 1 |
|||
%else |
|||
# As of Chromium 94, it uses functions in harfbuzz 2.9.0+, which is only found in F36+. |
|||
%if 0%{?fedora} >= 36 |
|||
%global bundleharfbuzz 0 |
|||
%else |
|||
%global bundleharfbuzz 1 |
|||
%endif |
|||
%global bundleopus 1 |
|||
%global bundlelibusbx 0 |
|||
%global bundlelibwebp 0 |
|||
%global bundlelibpng 0 |
|||
%global bundlelibjpeg 0 |
|||
%global bundlefreetype 0 |
|||
# Needs FT_ClipBox which was implemented after 2.11.0. Should be able to set this back to 0 later. |
|||
%global bundlefreetype 1 |
|||
%global bundlelibdrm 0 |
|||
%global bundlefontconfig 0 |
|||
%endif |
|||
|
|||
# Needs at least harfbuzz 2.4.0 now. |
|||
# 2019-09-13 |
|||
%if 0%{?fedora} < 31 |
|||
%global bundleharfbuzz 1 |
|||
%else |
|||
%global bundleharfbuzz 0 |
|||
%endif |
|||
|
|||
### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) |
|||
### Note: These are for Fedora use ONLY. |
|||
### For your own distribution, please get your own set of keys. |
|||
@ -175,18 +173,18 @@ BuildRequires: libicu-devel >= 5.4 |
|||
#Build with debugging symbols |
|||
%global debug_pkg 0 |
|||
|
|||
%global majorversion 93 |
|||
%global majorversion 94 |
|||
%global revision 1 |
|||
|
|||
# Depot tools revision |
|||
%global depot_tools_revision a806594b95a39141fdbf1f359087a44ffb2deaaf |
|||
%global depot_tools_revision 699d70d878603ebb3861c8f4487c4b05f5d81643 |
|||
|
|||
%if %{freeworld} |
|||
Name: ungoogled-chromium%{nsuffix} |
|||
%else |
|||
Name: ungoogled-chromium |
|||
%endif |
|||
Version: %{majorversion}.0.4577.82 |
|||
Version: %{majorversion}.0.4606.61 |
|||
Release: 1%{?dist}.%{revision} |
|||
%if %{?freeworld} |
|||
# chromium-freeworld |
|||
@ -216,7 +214,7 @@ Patch7: chromium-71.0.3578.98-widevine-r3.patch |
|||
# Disable fontconfig cache magic that breaks remoting |
|||
Patch8: chromium-91.0.4472.77-disable-fontconfig-cache-magic.patch |
|||
# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) |
|||
Patch9: chromium-78.0.3904.70-gcc9-drop-rsp-clobber.patch |
|||
Patch9: chromium-94.0.4606.54-gcc9-drop-rsp-clobber.patch |
|||
# Try to load widevine from other places |
|||
Patch10: chromium-92.0.4515.107-widevine-other-locations.patch |
|||
# Tell bootstrap.py to always use the version of Python we specify |
|||
@ -243,9 +241,6 @@ Patch57: chromium-93.0.4577.63-missing-cstring.patch |
|||
Patch58: chromium-53-ffmpeg-no-deprecation-errors.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-91-libyuv-aarch64.patch |
|||
Patch60: chromium-91-libyuv-aarch64.patch |
|||
# Update third_party/highway to 0.12.2 |
|||
# this is needed for sane arm/aarch64 |
|||
Patch61: chromium-92.0.4515.107-update-highway-0.12.2.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-90-ruy-include.patch |
|||
Patch62: chromium-90-ruy-include.patch |
|||
# Extra CXXFLAGS for aarch64 |
|||
@ -262,9 +257,6 @@ Patch66: chromium-84.0.4147.125-remoting-cstring.patch |
|||
Patch67: chromium-84.0.4147.125-i686-fix_textrels.patch |
|||
# Work around binutils bug in aarch64 (F33+) |
|||
Patch68: chromium-84.0.4147.125-aarch64-clearkeycdm-binutils-workaround.patch |
|||
# Fix sandbox code to properly handle the new way that glibc handles fstat in Fedora 34+ |
|||
# Thanks to Kevin Kofler for the fix. |
|||
Patch75: chromium-90.0.4430.72-fstatfix.patch |
|||
# Rawhide (f35) glibc defines SIGSTKSZ as a long instead of a constant |
|||
Patch76: chromium-92.0.4515.107-rawhide-gcc-std-max-fix.patch |
|||
# Do not download proprietary widevine module in the background (thanks Debian) |
|||
@ -272,27 +264,16 @@ Patch79: chromium-93.0.4577.63-widevine-no-download.patch |
|||
# Fix crashes with components/cast_* |
|||
# Thanks to Gentoo |
|||
Patch80: chromium-92.0.4515.107-EnumTable-crash.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-93-BluetoothLowEnergyScanFilter-include.patch |
|||
Patch81: chromium-93-BluetoothLowEnergyScanFilter-include.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-93-ClassProperty-include.patch |
|||
Patch82: chromium-93-ClassProperty-include.patch |
|||
|
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-94-ConversionStorageSql-lambda.patch |
|||
Patch81: chromium-94-ConversionStorageSql-lambda.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-94-CustomSpaces-include.patch |
|||
Patch82: chromium-94-CustomSpaces-include.patch |
|||
# Fixes for python3 |
|||
Patch83: chromium-92.0.4515.107-py3-fixes.patch |
|||
# Clean up clang-format for python3 |
|||
# thanks to Jon Nettleton |
|||
Patch86: chromium-93.0.4577.63-clang-format.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-93-ContextSet-permissive.patch |
|||
Patch87: chromium-93-ContextSet-permissive.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-93-DevToolsEmbedderMessageDispatcher-include.patch |
|||
Patch88: chromium-93-DevToolsEmbedderMessageDispatcher-include.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-93-FormForest-constexpr.patch |
|||
Patch89: chromium-93-FormForest-constexpr.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-93-HashPasswordManager-include.patch |
|||
Patch90: chromium-93-HashPasswordManager-include.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-93-pdfium-include.patch |
|||
Patch91: chromium-93-pdfium-include.patch |
|||
# https://github.com/stha09/chromium-patches/blob/master/chromium-93-ScopedTestDialogAutoConfirm-include.patch |
|||
Patch92: chromium-93-ScopedTestDialogAutoConfirm-include.patch |
|||
# In file included from ../../components/cast_channel/enum_table.cc:5: |
|||
# ../../components/cast_channel/enum_table.h:359:18: error: 'vector' in namespace 'std' does not name a template type |
|||
# 359 | const std::vector<Entry> data_; |
|||
@ -300,12 +281,13 @@ Patch92: chromium-93-ScopedTestDialogAutoConfirm-include.patch |
|||
# ../../components/cast_channel/enum_table.h:18:1: note: 'std::vector' is defined in header '<vector>'; did you forget to '#include <vector>'? |
|||
Patch93: chromium-93.0.4577.63-vector-fix.patch |
|||
# Fix NoDestructor issue with gcc |
|||
Patch94: chromium-93.0.4577.63-remoting-nodestructor-fix.patch |
|||
Patch94: chromium-94.0.4606.54-remoting-nodestructor-fix.patch |
|||
# include full UrlResponseHead header |
|||
Patch95: chromium-93.0.4577.63-mojo-header-fix.patch |
|||
# Fix against HarfBuzz v3 |
|||
# Thanks to Jan Beich @ FreeBSD |
|||
Patch96: chromium-93.0.4577.82-harfbuzz3.patch |
|||
# Fix multiple defines issue in webrtc/BUILD.gn |
|||
Patch96: chromium-94.0.4606.54-webrtc-BUILD.gn-fix-multiple-defines.patch |
|||
# Fix extra qualification error |
|||
Patch97: chromium-94.0.4606.61-remoting-extra-qualification.patch |
|||
|
|||
|
|||
# Use lstdc++ on EPEL7 only |
|||
@ -395,7 +377,7 @@ Source20: https://www.x.org/releases/individual/proto/xcb-proto-1.14.tar.xz |
|||
Source22: %{name}.appdata.xml |
|||
|
|||
# ungoogled-chromium source |
|||
%global ungoogled_chromium_revision 93.0.4577.82-1 |
|||
%global ungoogled_chromium_revision 94.0.4606.61-1 |
|||
Source300: https://github.com/Eloston/ungoogled-chromium/archive/%{ungoogled_chromium_revision}/ungoogled-chromium-%{ungoogled_chromium_revision}.tar.gz |
|||
|
|||
# We can assume gcc and binutils. |
|||
@ -539,9 +521,6 @@ BuildRequires: pkgconfig(gtk+-3.0) |
|||
%else |
|||
BuildRequires: pkgconfig(gtk+-2.0) |
|||
%endif |
|||
%if 0%{?fedora} |
|||
#BuildRequires: %{chromium_pybin} |
|||
%endif |
|||
%if ! %{build_with_python3} |
|||
%if 0%{?fedora} >= 32 |
|||
BuildRequires: python2.7 |
|||
@ -780,7 +759,6 @@ ln -s depot_tools-%{depot_tools_revision} ../depot_tools |
|||
%patch57 -p1 -b .missing-cstring |
|||
%patch58 -p1 -b .ffmpeg-deprecations |
|||
%patch60 -p1 -b .libyuv-aarch64 |
|||
%patch61 -p1 -b .update-highway-0.12.2 |
|||
%patch62 -p1 -b .ruy-include |
|||
%patch63 -p1 -b .aarch64-cxxflags-addition |
|||
%patch64 -p1 -b .java-only-allowed |
|||
@ -788,28 +766,20 @@ ln -s depot_tools-%{depot_tools_revision} ../depot_tools |
|||
%patch66 -p1 -b .remoting-cstring |
|||
%patch67 -p1 -b .i686-textrels |
|||
%patch68 -p1 -b .aarch64-clearkeycdm-binutils-workaround |
|||
%patch75 -p1 -b .fstatfix |
|||
%if 0%{?fedora} >= 35 |
|||
%patch76 -p1 -b .sigstkszfix |
|||
%endif |
|||
%patch79 -p1 -b .widevine-no-download |
|||
%patch80 -p1 -b .EnumTable-crash |
|||
%patch81 -p1 -b .BluetoothLowEnergyScanFilter-include |
|||
%patch82 -p1 -b .ClassProperty-include |
|||
%patch81 -p1 -b .ConversionStorageSql-lambda-include |
|||
%patch82 -p1 -b .CustomSpaces-include |
|||
%patch83 -p1 -b .py3fixes |
|||
%patch86 -p1 -b .clang-format-py3 |
|||
%patch87 -p1 -b .ContextSet-permissive |
|||
%patch88 -p1 -b .DevToolsEmbedderMessageDispatcher-include |
|||
%patch89 -p1 -b .FormForest-constexpr |
|||
%patch90 -p1 -b .HashPasswordManager-include |
|||
%patch91 -p1 -b .pdfium-include |
|||
%patch92 -p1 -b .ScopedTestDialogAutoConfirm-include |
|||
%patch93 -p1 -b .vector-fix |
|||
%patch94 -p1 -b .remoting-nodestructor-fix |
|||
%patch95 -p1 -b .mojo-header-fix |
|||
%if 0%{?fedora} >= 36 |
|||
%patch96 -p1 -b .hbfix |
|||
%endif |
|||
%patch96 -p1 -b .webrtc-BUILD.gn-fix-multiple-defines |
|||
%patch97 -p1 -b .remoting-extra-qualification |
|||
|
|||
|
|||
# EPEL specific patches |
|||
@ -939,7 +909,7 @@ UNGOOGLED_CHROMIUM_GN_DEFINES+=' is_debug=false is_official_build=false is_unsaf |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' system_libdir="lib64"' |
|||
%endif |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' is_clang=false use_sysroot=false fieldtrial_testing_like_official_build=true use_lld=false rtc_enable_symbol_export=true' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' is_clang=false use_sysroot=false disable_fieldtrial_testing_config=true use_lld=false rtc_enable_symbol_export=true' |
|||
UNGOOGLED_CHROMIUM_GN_DEFINES+=' use_gold=false' |
|||
|
|||
%if %{freeworld} |
|||
@ -1082,6 +1052,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ |
|||
'third_party/devtools-frontend/src/front_end/third_party/marked' \ |
|||
'third_party/devtools-frontend/src/front_end/third_party/puppeteer' \ |
|||
'third_party/devtools-frontend/src/front_end/third_party/wasmparser' \ |
|||
'third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n' \ |
|||
'third_party/dom_distiller_js' \ |
|||
'third_party/eigen3' \ |
|||
'third_party/emoji-segmenter' \ |
|||
@ -1399,7 +1370,11 @@ tar xf %{SOURCE20} |
|||
%endif |
|||
|
|||
# export PYTHONPATH="../../third_party/pyjson5/src:../../third_party/catapult/third_party/google-endpoints:../../xcb-proto-1.14" |
|||
%if 0%{?rhel} == 8 |
|||
export PYTHONPATH="../../third_party/protobuf/third_party/six:../../third_party/pyjson5/src:../../xcb-proto-1.14:../../third_party/catapult/third_party/html5lib-1.1" |
|||
%else |
|||
export PYTHONPATH="../../third_party/pyjson5/src:../../xcb-proto-1.14:../../third_party/catapult/third_party/html5lib-1.1" |
|||
%endif |
|||
|
|||
echo |
|||
# Now do the full browser |
|||
@ -1457,7 +1432,7 @@ rm -rf %{buildroot} |
|||
%endif |
|||
cp -a chrome %{buildroot}%{chromium_path}/%{chromium_browser_channel} |
|||
cp -a chrome_sandbox %{buildroot}%{chromium_path}/chrome-sandbox |
|||
cp -a crashpad_handler %{buildroot}%{chromium_path}/crashpad_handler |
|||
cp -a chrome_crashpad_handler %{buildroot}%{chromium_path}/chrome_crashpad_handler |
|||
cp -a ../../chrome/app/resources/manpage.1.in %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 |
|||
sed -i "s|@@[email protected]@|%{chromium_browser_channel}|g" %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 |
|||
sed -i "s|@@[email protected]@|%{chromium_menu_name}|g" %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 |
|||
@ -1548,7 +1523,7 @@ fi |
|||
%dir %{chromium_path} |
|||
%{chromium_path}/*.bin |
|||
%{chromium_path}/chrome_*.pak |
|||
%{chromium_path}/crashpad_handler |
|||
%{chromium_path}/chrome_crashpad_handler |
|||
%{chromium_path}/resources.pak |
|||
%{chromium_path}/icudtl.dat |
|||
%{chromium_path}/%{chromium_browser_channel} |
|||
@ -1640,6 +1615,9 @@ fi |
|||
%endif |
|||
|
|||
%changelog |
|||
* Wed Sep 28 2021 wchen342 <[email protected]> - 94.0.4606.61-1 |
|||
- update Chromium to 94.0.4606.61 |
|||
|
|||
* Wed Sep 22 2021 wchen342 <[email protected]> - 93.0.4577.82-1 |
|||
- update Chromium to 93.0.4577.82 |
|||
|
|||
|
Loading…
Reference in new issue