[vorbis-dev] [Fwd: Signal handling bug in ogg123]

Kenneth C. Arnold kca5 at cornell.edu
Sat Nov 22 12:33:25 PST 2003


Daniel: thought you'd like to know that I'm forwarding this to the 
vorbis-dev mailing list.

<p><p>Hey vorbis-dev (after a very long time!),

I got the attached message sent to just 3 of the people who have worked 
on ogg123, and thought it would probably due better good on the mailing 
list.

It seems to concern http://bugs.xiph.org/show_bug.cgi?id=250 by casual 
search.

For the general good: I wrote ogg123 many years ago, and after a very 
educational period of the work required to actually maintain a useful 
program, I finally admitted defeat. I was probably the one who was 
responsible for this bug in the first place, but I hope that it's 
understandable considering that ogg123 was the second program I ever 
wrote that was remotely useful. But its current status and usefulness is 
  definitely to the credit of the Vorbis team, not me.

Regards,
Ken



<strong>attached mail follows:</strong><hr noshade>



I'm so very glad that the vorbis-tools team has awakened from the dead to
make a new release after so much time.  Unfortunately, I'm rather annoyed
that you've not included a patch to make ogg123 behave properly when it
receives SIGTERM.  ogg123's failure to handle SIGTERM was documented quite
clearly in a message to the vorbis-dev mailing list which included a simple
and effective patch which corrects the problem:

http://www.xiph.org/archives/vorbis-dev/200306/0054.html

This problem is quite easy to replicate.  In one shell, cd to a directory
that contains a bunch of Ogg files and execute "for i in *.ogg; do ogg123 -d
oss; done".  While this is running, execute "killall -TERM ogg123" in
another shell.

I'm the author of Moosic, a jukebox backend daemon that uses helper programs
to play audio files, and ogg123 is almost invariably used as the handler for
Ogg files (because there isn't much of an alternative).  This means that
people who use my program to play Ogg files on a system that uses OSS for
sound experience a gravely incorrect behavior when they instruct Moosic to
skip to the next song when an Ogg file is currently playing, since a TERM
signal is used to tell the current helper process to terminate.

For many months now, I've worked around the improper behavior in ogg123 by
treating it differently than other helper programs, sending it SIGINT
instead of SIGTERM.  When I saw that vorbis-tools-1.0.1 had been released, I
had a glimmer of hope that I could finally remove this ugly special case
from my code.  But this hope was quickly shattered when I inspected the code
in the new release and saw that SIGTERM remains unhandled.  Do you have some
sort of explanation why you have ignored multiple legitimate reports of a
problem in a program that you allegedly maintain, especially when the
problem is trivial to fix?  Truthfully speaking, I'm not all that interested
in hearing your excuses regarding this issue, and more interested in hearing
that this issue will be resolved in the next release of vorbis-tools and
that this release will take place in the very near future.

I think you should understand that if I sound a teensy bit bitter about this
subject, it is because I remember the long, puzzling, and rather unpleasant
hours that I spent unsuccessfully trying to track down a supposed bug in my
program which was frustrating my users and myself for several months before
I discovered that the problem was caused by your program's failure to act
like a decent Unix citizen.


-- 
{   Daniel Jacob Pearson    |      If you're not part of the solution,     }
{    <daniel at nanoo.org>     |        you're part of the precipitate.       }


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: Digital signature
Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20031122/cca79791/signature.pgp


More information about the Vorbis-dev mailing list