forked from pool/SDL_mixer
19dc307ec7
- import patches from upstream (via archlinux) to fix mixer / mikmod free corruption (bnc#851996) OBS-URL: https://build.opensuse.org/request/show/208073 OBS-URL: https://build.opensuse.org/package/show/games/SDL_mixer?expand=0&rev=27
36 lines
1.1 KiB
Diff
36 lines
1.1 KiB
Diff
|
|
# HG changeset patch
|
|
# User Sam Lantinga <slouken@libsdl.org>
|
|
# Date 1343000017 25200
|
|
# Node ID 2ebb0d016f277f7f643d8a66ed0e1099e10d1fba
|
|
# Parent 56cad6484b04f83c8d42428c755a046678506436
|
|
Fixed normal linking with libmikmod and linking with earlier versions of libmikmod.
|
|
|
|
diff -r 56cad6484b04 -r 2ebb0d016f27 dynamic_mod.c
|
|
--- a/dynamic_mod.c Sun Jul 22 16:13:27 2012 -0700
|
|
+++ b/dynamic_mod.c Sun Jul 22 16:33:37 2012 -0700
|
|
@@ -97,8 +97,8 @@
|
|
(void (*)(void*))
|
|
SDL_LoadFunction(mikmod.handle, "MikMod_free");
|
|
if ( mikmod.MikMod_free == NULL ) {
|
|
- SDL_UnloadObject(mikmod.handle);
|
|
- return -1;
|
|
+ /* libmikmod 3.1 and earlier doesn't have it */
|
|
+ mikmod.MikMod_free = free;
|
|
}
|
|
mikmod.Player_Active =
|
|
(BOOL (*)(void))
|
|
@@ -246,6 +246,11 @@
|
|
mikmod.MikMod_RegisterDriver = MikMod_RegisterDriver;
|
|
mikmod.MikMod_errno = &MikMod_errno;
|
|
mikmod.MikMod_strerror = MikMod_strerror;
|
|
+#if LIBMIKMOD_VERSION < ((3<<16)|(2<<8))
|
|
+ mikmod.MikMod_free = free;
|
|
+#else
|
|
+ mikmod.MikMod_free = MikMod_free;
|
|
+#endif
|
|
mikmod.Player_Active = Player_Active;
|
|
mikmod.Player_Free = Player_Free;
|
|
mikmod.Player_LoadGeneric = Player_LoadGeneric;
|
|
|