# HG changeset patch # User Cristi Magherusan # Date 1185575887 -10800 # Node ID c87dfbb3711e99a6068d8a773cd53eac3cf338b1 # Parent 564359ff93043c125a90efd03da148f23bc9171b# Parent 06d89ea93859790ac1d43650f0ba07f4f1e001cf another damn merge diff -r 564359ff9304 -r c87dfbb3711e src/audacious/playback.c --- a/src/audacious/playback.c Sat Jul 28 01:28:48 2007 +0300 +++ b/src/audacious/playback.c Sat Jul 28 01:38:07 2007 +0300 @@ -193,6 +193,9 @@ if (playback->plugin->stop) playback->plugin->stop(playback); + if (playback->thread != NULL) + g_thread_join(playback->thread); + free_vis_data(); ip_data.paused = FALSE; @@ -243,6 +246,7 @@ playback->plugin = entry->decoder; playback->output = &psuedo_output_plugin; playback->filename = g_strdup(entry->filename); + playback->thread = g_thread_self(); set_current_input_playback(playback); @@ -253,6 +257,8 @@ else if (playback->error) playback_error(); + playback->thread = NULL; + g_thread_exit(NULL); return NULL; } diff -r 564359ff9304 -r c87dfbb3711e src/audacious/plugin.h --- a/src/audacious/plugin.h Sat Jul 28 01:28:48 2007 +0300 +++ b/src/audacious/plugin.h Sat Jul 28 01:38:07 2007 +0300 @@ -191,6 +191,8 @@ int playing; gboolean error; gboolean eof; + + GThread *thread; }; struct _InputPlugin {