aboutsummaryrefslogtreecommitdiffstats
path: root/audio/vorbis-tools
diff options
context:
space:
mode:
authornaddy <naddy@FreeBSD.org>2002-01-19 23:37:11 +0800
committernaddy <naddy@FreeBSD.org>2002-01-19 23:37:11 +0800
commit5ba6110a0862e1085cc7566781446bfc8691d3aa (patch)
treec5d3208643ea7b79a8c0120ef7552e4ad4dbd6c5 /audio/vorbis-tools
parenta8bc3067b9621b556030343b59508c4ce77aeec2 (diff)
downloadfreebsd-ports-gnome-5ba6110a0862e1085cc7566781446bfc8691d3aa.tar.gz
freebsd-ports-gnome-5ba6110a0862e1085cc7566781446bfc8691d3aa.tar.zst
freebsd-ports-gnome-5ba6110a0862e1085cc7566781446bfc8691d3aa.zip
proper threads fix from Xiph CVS
Diffstat (limited to 'audio/vorbis-tools')
-rw-r--r--audio/vorbis-tools/files/patch-ogg123::buffer.c32
1 files changed, 23 insertions, 9 deletions
diff --git a/audio/vorbis-tools/files/patch-ogg123::buffer.c b/audio/vorbis-tools/files/patch-ogg123::buffer.c
index f7523092ac85..409b5ed97505 100644
--- a/audio/vorbis-tools/files/patch-ogg123::buffer.c
+++ b/audio/vorbis-tools/files/patch-ogg123::buffer.c
@@ -2,16 +2,30 @@
$FreeBSD$
--- ogg123/buffer.c.orig Thu Dec 20 01:24:53 2001
-+++ ogg123/buffer.c Wed Jan 16 03:26:15 2002
-@@ -88,9 +88,11 @@
++++ ogg123/buffer.c Sat Jan 19 16:24:44 2002
+@@ -85,12 +85,6 @@
+ buf_t *buf = (buf_t *)arg;
- /* Cleanup thread data structures */
- pthread_mutex_unlock(&buf->mutex);
-+#if 0 /* KLUDGE: disabling this keeps ogg123 from crashing */
- pthread_mutex_destroy(&buf->mutex);
- pthread_cond_destroy(&buf->playback_cond);
- pthread_cond_destroy(&buf->write_cond);
-+#endif
+ DEBUG("Enter buffer_thread_cleanup");
+-
+- /* Cleanup thread data structures */
+- pthread_mutex_unlock(&buf->mutex);
+- pthread_mutex_destroy(&buf->mutex);
+- pthread_cond_destroy(&buf->playback_cond);
+- pthread_cond_destroy(&buf->write_cond);
}
+@@ -430,6 +424,12 @@
+ void buffer_destroy (buf_t *buf)
+ {
+ DEBUG("buffer_destroy");
++
++ /* Cleanup pthread variables */
++ pthread_mutex_destroy(&buf->mutex);
++ pthread_cond_destroy(&buf->write_cond);
++ pthread_cond_destroy(&buf->playback_cond);
++
+ free(buf);
+ }
+