forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev-qt/qtwebengine: 5.15.2_p20210406 snapshot bump
Snapshotted at: Branch: 5.15 Commit: 1f3412fa07b524fa7917250ed0cc2661abb9246a Submodule qtwebengine-chromium.git: Branch: 87-based Commit: d13920f28c2f3922e0cf793996ea33d02b81a0a4 Add Fedora patches for GLIBC-2.33 and GCC-11... Bug: https://bugs.gentoo.org/769989 Closes: https://bugs.gentoo.org/768261 Package-Manager: Portage-3.0.18, Repoman-3.0.3 Signed-off-by: Andreas Sturmlechner <[email protected]>
- Loading branch information
Showing
4 changed files
with
444 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST qtwebengine-5.15.2-chromium87-ppc64le.tar.xz 28536 BLAKE2B 98f8e01e7026d9df1d30ae453d4394d3c4ad04c0620a2496235d45f5f1080c2280e040826cde7f72d9771bfc80d0c3df56c9dcbe4f763cec432ad56de37d64c5 SHA512 c90a76f44a9d720624016fd082ab3036f12e13b9789e869ebaf5e4774afca7d4187faf187f365f696d1a7eda05ca75516556ee9d291cdb3408d57cc4b23e2654 | ||
DIST qtwebengine-5.15.2_p20210224.tar.xz 320052028 BLAKE2B a1ebaae7cf114041576f4920de1e484bea70c715a470e83e7c47bd8ff95480fc4e408bba173990480732bd464a9eb07d304f4afdb90d943c0a8cbe1e8299df84 SHA512 939292511703f3a6d758d38f1c860ffacd003be65761b19f23e8817bf1121cb9e6351216f737126d8defb1c97ca877e1c6f352e7cfee8e9289274d0793348b51 | ||
DIST qtwebengine-5.15.2_p20210406.tar.xz 320144324 BLAKE2B 45aafc32f4642fee5525f0504d61ed47c3085d5eff566271701805942ce5fcb2233655111592059775991da5b89dc1702031373f6ff171722ed163265d894daa SHA512 c4a0d5fec3247c04acc447c1c819d1e5dcb1d3c0cbb57a87a5cfa5c0c2b765e82c9f75a7297ba57303df5e1004d75dc554ffd70e24ecb8655126136672f38fdb |
113 changes: 113 additions & 0 deletions
113
dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-gcc11.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
diff --git a/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp b/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp | ||
index 013f1dfb2..3ce63c192 100644 | ||
--- a/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp | ||
+++ b/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp | ||
@@ -9,6 +9,7 @@ | ||
|
||
#include "libANGLE/HandleAllocator.h" | ||
|
||
+#include <limits> | ||
#include <algorithm> | ||
#include <functional> | ||
|
||
diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc | ||
index fd651958f..1e8d0606c 100644 | ||
--- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc | ||
+++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc | ||
@@ -14,9 +14,9 @@ | ||
* limitations under the License. | ||
*/ | ||
|
||
+#include <limits> | ||
#include "src/trace_processor/containers/string_pool.h" | ||
|
||
-#include <limits> | ||
|
||
#include "perfetto/base/logging.h" | ||
#include "perfetto/ext/base/utils.h" | ||
diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc | ||
index 00496b335..0dccfeb8a 100644 | ||
--- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc | ||
+++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc | ||
@@ -14,6 +14,7 @@ | ||
* limitations under the License. | ||
*/ | ||
|
||
+#include <limits> | ||
#include "src/trace_processor/db/column.h" | ||
|
||
#include "src/trace_processor/db/compare.h" | ||
diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc | ||
index 837bfeba9..cdd56817d 100644 | ||
--- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc | ||
+++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc | ||
@@ -14,6 +14,7 @@ | ||
* limitations under the License. | ||
*/ | ||
|
||
+#include <limits> | ||
#include "src/trace_processor/types/variadic.h" | ||
|
||
namespace perfetto { | ||
diff --git a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc | ||
index be91def6b..73f202356 100644 | ||
--- a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc | ||
+++ b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc | ||
@@ -245,7 +245,7 @@ static void AXPlatformAtkHyperlinkInit(AXPlatformAtkHyperlink* self, gpointer) { | ||
} | ||
|
||
GType ax_platform_atk_hyperlink_get_type() { | ||
- static volatile gsize type_volatile = 0; | ||
+ static gsize type_volatile = 0; | ||
|
||
AXPlatformNodeAuraLinux::EnsureGTypeInit(); | ||
|
||
diff --git a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc | ||
index 04125c6fd..6c64e5d8e 100644 | ||
--- a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc | ||
+++ b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc | ||
@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, gpointer /* class_data */) { | ||
GType GetType() { | ||
AXPlatformNodeAuraLinux::EnsureGTypeInit(); | ||
|
||
- static volatile gsize type_volatile = 0; | ||
+ static gsize type_volatile = 0; | ||
if (g_once_init_enter(&type_volatile)) { | ||
static const GTypeInfo type_info = { | ||
sizeof(AXPlatformNodeAuraLinuxClass), // class_size | ||
diff --git a/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc b/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc | ||
index c663a2074..38a342484 100644 | ||
--- a/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc | ||
+++ b/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc | ||
@@ -141,7 +141,7 @@ void GtkKeyBindingsHandler::HandlerClassInit(HandlerClass* klass) { | ||
} | ||
|
||
GType GtkKeyBindingsHandler::HandlerGetType() { | ||
- static volatile gsize type_id_volatile = 0; | ||
+ static gsize type_id_volatile = 0; | ||
if (g_once_init_enter(&type_id_volatile)) { | ||
GType type_id = g_type_register_static_simple( | ||
GTK_TYPE_TEXT_VIEW, g_intern_static_string("GtkKeyBindingsHandler"), | ||
--- a/src/3rdparty/chromium/components/bookmarks/browser/bookmark_expanded_state_tracker.cc | ||
+++ b/src/3rdparty/chromium/components/bookmarks/browser/bookmark_expanded_state_tracker.cc | ||
@@ -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 <cstddef> | ||
#include "components/bookmarks/browser/bookmark_expanded_state_tracker.h" | ||
|
||
#include <stdint.h> | ||
diff --git a/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc b/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc | ||
index 657a3c96b..ad641a082 100644 | ||
--- a/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc | ||
+++ b/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc | ||
@@ -2,6 +2,8 @@ | ||
// Use of this source code is governed by a BSD-style license that can be | ||
// found in the LICENSE file. | ||
|
||
+#include <cstddef> | ||
+ | ||
#include "components/bookmarks/browser/base_bookmark_model_observer.h" | ||
|
||
namespace bookmarks { |
141 changes: 141 additions & 0 deletions
141
dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-glibc-2.33.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
diff -up b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc | ||
--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc | ||
+++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc | ||
@@ -257,6 +257,18 @@ ResultExpr EvaluateSyscallImpl(int fs_de | ||
return RestrictKillTarget(current_pid, sysno); | ||
} | ||
|
||
+#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 b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc | ||
--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc | ||
+++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc | ||
@@ -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 b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h | ||
--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h | ||
+++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h | ||
@@ -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 b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc | ||
--- a/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc | ||
+++ b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc | ||
@@ -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 b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h | ||
--- a/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h | ||
+++ b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h | ||
@@ -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_ |
Oops, something went wrong.