Here is a patch to make ogg123 gracefully exit when it receives a SIGTERM. My playlist manager (moosic) sends this signal to the player when it skips songs. Without this handler the parent ogg123 thread exits before it's children, which leaves the sound device locked while the playlist manager tries to play the next song. <p>--- vorbis-tools-1.0.0.orig/ogg123/ogg123.c +++ vorbis-tools-1.0.0/ogg123/ogg123.c @@ -108,6 +108,10 @@ sig_request.last_ctrl_c = now; break; + case SIGTERM: + sig_request.exit = 1; + break; + case SIGTSTP: sig_request.pause = 1; /* buffer_Pause (Options.outputOpts.buffer); @@ -365,6 +369,7 @@ signal (SIGINT, signal_handler); signal (SIGTSTP, signal_handler); signal (SIGCONT, signal_handler); + signal (SIGTERM, signal_handler); /* Play the files/streams */ <p><p> -- Nate Straz nstraz@sgi.com sgi, inc http://www.sgi.com/ Linux Test Project http://ltp.sf.net/ --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to 'vorbis-dev-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.