# HG changeset patch # User Giacomo Lozito # Date 1187832010 -7200 # Node ID d1671cf98196f5d808fafa657dbca3df6f04e7c4 # Parent fc1b025e69001dbe915a232f26c5da0c8769f85b fixed lock in sid playback when doing fast song switching diff -r fc1b025e6900 -r d1671cf98196 src/sid/xmms-sid.c --- a/src/sid/xmms-sid.c Wed Aug 22 23:52:25 2007 +0100 +++ b/src/sid/xmms-sid.c Thu Aug 23 03:20:10 2007 +0200 @@ -290,6 +290,14 @@ } +static gboolean xs_schedule_subctrl_update( gpointer unused ) +{ + if (xs_status.isPlaying == TRUE ) + xs_subctrl_update(); + return FALSE; +} + + /* * Main playing thread loop */ @@ -387,9 +395,7 @@ XSDEBUG("subtune #%i selected, initializing...\n", myStatus.currSong); - GDK_THREADS_ENTER(); - xs_subctrl_update(); - GDK_THREADS_LEAVE(); + g_idle_add_full( G_PRIORITY_HIGH_IDLE , xs_schedule_subctrl_update , NULL , NULL ); /* Check minimum playtime */ songLength = myTune->subTunes[myStatus.currSong-1].tuneLength;