diff options
author | Max Khon <fjoe@FreeBSD.org> | 2004-02-04 21:31:34 +0000 |
---|---|---|
committer | Max Khon <fjoe@FreeBSD.org> | 2004-02-04 21:31:34 +0000 |
commit | b87bef1ad47a7bbf93ed0c5325fa1ab342e7e898 (patch) | |
tree | 6ad30ba27a4b80d648d607a1c588b3f46eb090f5 /audio/xmms-arts_output | |
parent | a36824c8e47e08a14aafb4d8684e4c3983912a25 (diff) | |
download | ports-b87bef1ad47a7bbf93ed0c5325fa1ab342e7e898.tar.gz ports-b87bef1ad47a7bbf93ed0c5325fa1ab342e7e898.zip |
Notes
Diffstat (limited to 'audio/xmms-arts_output')
-rw-r--r-- | audio/xmms-arts_output/files/patch-audio.c | 39 | ||||
-rw-r--r-- | audio/xmms-arts_output/files/patch-configure | 10 |
2 files changed, 49 insertions, 0 deletions
diff --git a/audio/xmms-arts_output/files/patch-audio.c b/audio/xmms-arts_output/files/patch-audio.c new file mode 100644 index 000000000000..9c64087dbe7f --- /dev/null +++ b/audio/xmms-arts_output/files/patch-audio.c @@ -0,0 +1,39 @@ +--- audio.c.orig Thu Aug 21 14:38:53 2003 ++++ audio.c Thu Feb 5 03:27:09 2004 +@@ -10,6 +10,7 @@ + #include <errno.h> + #include <signal.h> + #include <pthread.h> ++#include <dlfcn.h> + + static arts_stream_t handle; + +@@ -269,6 +270,7 @@ + int artsxmms_open(AFormat fmt, int rate, int nch) + { + int err; ++ static int libstdcpp_preloaded = 0; + + pthread_mutex_lock(&artsm); + /* Stop the arts initialization from complaining */ +@@ -291,6 +293,20 @@ + + going = 1; + pthread_mutex_unlock(&artsm); ++ ++ /* ++ * This is a hack to prevent unloading of libstdc++ ++ * (required by arts libraries) in arts_free() but before ++ * this thread is terminated. libstdc++ registers thread cleanup ++ * handler and xmms crashes when this cleanup function is called ++ * on thread termination. ++ */ ++ if (!libstdcpp_preloaded) { ++ if (dlopen("libstdc++.so", RTLD_NOW) != NULL) ++ libstdcpp_preloaded = 1; ++ else ++ fprintf(stderr, "Failed to preload libstdc++.so\n"); ++ } + return 1; + } + diff --git a/audio/xmms-arts_output/files/patch-configure b/audio/xmms-arts_output/files/patch-configure new file mode 100644 index 000000000000..1eb3cd980633 --- /dev/null +++ b/audio/xmms-arts_output/files/patch-configure @@ -0,0 +1,10 @@ +--- configure.orig Thu Aug 21 14:43:13 2003 ++++ configure Thu Feb 5 03:08:04 2004 +@@ -7820,6 +7820,7 @@ + + # This can be used to rebuild libtool when needed + LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" ++$ac_aux_dir/ltconfig $LIBTOOL_DEPS + + # Always use our own libtool. + LIBTOOL='$(SHELL) $(top_builddir)/libtool' |