summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/sdl-mixer/files/sdl-mixer-1.2.12-wav.patch')
-rw-r--r--media-libs/sdl-mixer/files/sdl-mixer-1.2.12-wav.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-wav.patch b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-wav.patch
new file mode 100644
index 000000000000..38914fd77f15
--- /dev/null
+++ b/media-libs/sdl-mixer/files/sdl-mixer-1.2.12-wav.patch
@@ -0,0 +1,35 @@
+https://bugs.gentoo.org/show_bug.cgi?id=406739
+Nikos Chantziaras 2012-03-03 03:13:39 EST
+
+There's a bug in the current version of SDL_mixer where failing to load a WAV sample will result in freeing a resource twice, resulting in an application crash. There is an upstream fix for this:
+
+http://hg.libsdl.org/SDL_mixer/rev/ea53a85853dd
+
+Upstream bug: http://bugzilla.libsdl.org/show_bug.cgi?id=1418
+
+--- a/mixer.c
++++ b/mixer.c
+@@ -610,13 +610,15 @@
+ break;
+ default:
+ SDL_SetError("Unrecognized sound file type");
+- return(0);
++ if ( freesrc ) {
++ SDL_RWclose(src);
++ }
++ loaded = NULL;
++ break;
+ }
+ if ( !loaded ) {
++ /* The individual loaders have closed src if needed */
+ SDL_free(chunk);
+- if ( freesrc ) {
+- SDL_RWclose(src);
+- }
+ return(NULL);
+ }
+
+
+
+
+