summaryrefslogtreecommitdiffstats
path: root/abs/extra/sdl_mixer/double-free-crash.patch
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2012-11-25 04:49:14 (GMT)
committerJames Meyer <james.meyer@operamail.com>2012-11-25 04:49:14 (GMT)
commitf591ead4c8a9b64b0630900aa12c260027a7db6f (patch)
tree091b31cdc3a24c0b9108f0ea718ecaad166cc834 /abs/extra/sdl_mixer/double-free-crash.patch
parent9b35fb3e4f637252b4674a78adf9026faeaa5340 (diff)
downloadlinhes_pkgbuild-f591ead4c8a9b64b0630900aa12c260027a7db6f.zip
linhes_pkgbuild-f591ead4c8a9b64b0630900aa12c260027a7db6f.tar.gz
linhes_pkgbuild-f591ead4c8a9b64b0630900aa12c260027a7db6f.tar.bz2
compiled/added programs needed by xbmc: Moved some programs out of community into extra.
libmpeg2 pm-utils afpfs-ng fluidsynth libmodplug libnfs libshairport dbus-c__ doxygen libocnfig libffado libimobiledevice libmicrothttpd sdl_image sdl_mixer smpeg upower usbmuxd vdpau-video
Diffstat (limited to 'abs/extra/sdl_mixer/double-free-crash.patch')
-rw-r--r--abs/extra/sdl_mixer/double-free-crash.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/abs/extra/sdl_mixer/double-free-crash.patch b/abs/extra/sdl_mixer/double-free-crash.patch
new file mode 100644
index 0000000..6f4e6a1
--- /dev/null
+++ b/abs/extra/sdl_mixer/double-free-crash.patch
@@ -0,0 +1,32 @@
+
+# HG changeset patch
+# User Sam Lantinga <slouken@libsdl.org>
+# Date 1329087437 18000
+# Node ID 2d713670db9b832b0c5aa700824900bc1fc3c3cd
+# Parent df72f22b4b411ad4b08f924329678aabd5ac97d6
+Fixed 1418 - crash on double free if loading WAV file failed
+
+diff -r df72f22b4b41 -r 2d713670db9b mixer.c
+--- a/mixer.c Mon Jan 30 21:41:45 2012 -0500
++++ b/mixer.c Sun Feb 12 17:57:17 2012 -0500
+@@ -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);
+ }
+
+