summaryrefslogtreecommitdiff
path: root/gnu/packages/patches
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2024-01-28 20:46:03 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2024-01-28 21:03:31 -0500
commit2c5293afffa39d5d4aaec248a1973c7f62b1a0b4 (patch)
tree4552c9e64d00d486d531c388c01f8d455b23ad60 /gnu/packages/patches
parentf74789cd54a9b2c45a06642f0bebb11aed588065 (diff)
gnu: lugaru: Apply patch fixing sound.
* gnu/packages/patches/lugaru-fix-sound.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/games.scm (lugaru) [source]: Update source URL. Apply patch. [arguments]: Use gexps. [inputs]: Remove labels and sort. Change-Id: Iebefc9fc43d3473e51c8c732539e6aa2f14d9f5f
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r--gnu/packages/patches/lugaru-fix-sound.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/gnu/packages/patches/lugaru-fix-sound.patch b/gnu/packages/patches/lugaru-fix-sound.patch
new file mode 100644
index 0000000000..742908c977
--- /dev/null
+++ b/gnu/packages/patches/lugaru-fix-sound.patch
@@ -0,0 +1,32 @@
+From 3adfb088eed81fc2c9e40ac55018378d4975f469 Mon Sep 17 00:00:00 2001
+From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
+Date: Sun, 28 Jan 2024 19:50:51 -0500
+Subject: [PATCH] audio: Look extension from right, not left.
+
+* Source/Audio/openal_wrapper.cpp (decode_to_pcm): Find extension from
+the right (strrchr), not from the left, to avoid eagerly truncating a
+file name.
+
+Fixes: https://gitlab.com/osslugaru/lugaru/-/issues/124#note_1746570172
+---
+ Source/Audio/openal_wrapper.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Source/Audio/openal_wrapper.cpp b/Source/Audio/openal_wrapper.cpp
+index cc4fc36..072fcb8 100644
+--- a/Source/Audio/openal_wrapper.cpp
++++ b/Source/Audio/openal_wrapper.cpp
+@@ -316,7 +316,7 @@ static void* decode_to_pcm(const char* _fname, ALenum& format, ALsizei& size, AL
+ // !!! FIXME: if it's not Ogg, we don't have a decoder. I'm lazy. :/
+ char* fname = (char*)alloca(strlen(_fname) + 16);
+ strcpy(fname, _fname);
+- char* ptr = strchr(fname, '.');
++ char* ptr = strrchr(fname, '.');
+ if (ptr) {
+ *ptr = '\0';
+ }
+
+base-commit: 6a58b62858d9c3c3630abf00bf43075f65a09d38
+--
+2.41.0
+