contrib/firefox/0010-musl-Fix-syscall-wrappers.patch
2022-09-19 22:37:26 +10:00

43 lines
1.5 KiB
Diff

From 1b46c0fc085fe93c36320d7ac1004c83efccdccc Mon Sep 17 00:00:00 2001
From: Samuel Holland <samuel@sholland.org>
Date: Sun, 8 Jan 2017 19:19:23 -0600
Subject: [PATCH 11/30] musl: Fix syscall wrappers
musl defines p{read,write}64 to their non-suffixed equivalents to avoid
duplication in its syscall wrappers. This breaks macro expansion here,
leading to errors such as:
In function size_t sys_pread64(int, void*, size_t, off_t):
error: '__NR_pread' was not declared in this scope
The fix here is to undefine the p{read,write}64 macros, so the syscall
expands to (e.g.) __NR_pread64 instead.
Signed-off-by: Samuel Holland <samuel@sholland.org>
Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
---
.../src/third_party/lss/linux_syscall_support.h | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h b/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
index 1abe0ba5b0..d6087a1674 100644
--- a/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
+++ b/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
@@ -173,6 +173,13 @@ extern "C" {
# undef __NR_waitpid
#endif
+#ifdef pread64
+#undef pread64
+#endif
+#ifdef pwrite64
+#undef pwrite64
+#endif
+
/* As glibc often provides subtly incompatible data structures (and implicit
* wrapper functions that convert them), we provide our own kernel data
* structures for use by the system calls.
--
2.34.1