summaryrefslogtreecommitdiff
path: root/net-voip/mumble/files/mumble-1.4-force-alignment.patch
diff options
context:
space:
mode:
Diffstat (limited to 'net-voip/mumble/files/mumble-1.4-force-alignment.patch')
-rw-r--r--net-voip/mumble/files/mumble-1.4-force-alignment.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/net-voip/mumble/files/mumble-1.4-force-alignment.patch b/net-voip/mumble/files/mumble-1.4-force-alignment.patch
new file mode 100644
index 000000000000..ea0ae4792443
--- /dev/null
+++ b/net-voip/mumble/files/mumble-1.4-force-alignment.patch
@@ -0,0 +1,28 @@
+From 13c051b36b387356815cff5d685bc628b74ba136 Mon Sep 17 00:00:00 2001
+From: Davide Beatrici <git@davidebeatrici.dev>
+Date: Thu, 1 Sep 2022 23:32:57 +0200
+Subject: [PATCH] FIX(positional-audio): Force 8 bytes alignment for
+ CCameraAngles in GTAV plugin
+
+https://en.cppreference.com/w/cpp/language/alignas
+
+This fixes compilation when the implicit alignment is not 8 bytes.
+
+It can be the case with 32 bit targets.
+---
+ plugins/gtav/structs.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/plugins/gtav/structs.h b/plugins/gtav/structs.h
+index 2829dc11e1..0e4f76edab 100644
+--- a/plugins/gtav/structs.h
++++ b/plugins/gtav/structs.h
+@@ -118,7 +118,7 @@ struct CCameraManagerAngles {
+ ptr_t cameraAngles; // CCameraAngles *
+ };
+
+-struct CCameraAngles {
++struct alignas(8) CCameraAngles {
+ uint8_t pad1[960];
+ ptr_t playerAngles; // CPlayerAngles *
+ uint8_t pad2[60];