[Gllug] How can writing a single character (successfully) to stderr cause a segmentation fault

John Winters john at sinodun.org.uk
Mon Oct 23 19:04:15 UTC 2006


I'm playing with MythArchive, for saving copies of recorded TV 
programmes.  It seems quite nice but it's at the stage where it works 
with a following wind and a downhill slope.  Lots of bits break if your 
machine isn't set up quite the way the author's one is.  I've been 
trying to round up a few of the bugs.

One thing is puzzling me.  It invokes a program called "mythreplex" to 
do part of its processing and mythreplex then halts with a segmentation 
fault.  I've tried doing the same invocation of mythreplex under strace 
and get precisely the same segmentation fault, but absolutely nothing to 
indicate what caused it.  The last bit of the trace goes:

write(2, "Audiostream: layer: 2", 21Audiostream: layer: 2)   = 21
write(2, "  BRate: 192 kb/s", 17  BRate: 192 kb/s)       = 17
write(2, "  Freq: 48.0 kHz", 16  Freq: 48.0 kHz)        = 16
write(2, " frame size: 576 (", 18 frame size: 576 ()      = 18
write(2, " 0:00:00.024 ", 13 0:00:00.024 )           = 13
write(2, ") ", 2) )                       = 2
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Process 1582 detached

The final bracket written to stderr comes out OK.  I'm puzzled how the 
program then goes on to cause a SIGSEGV without apparently doing anything.

Any suggestions?

TIA,
John
-- 
Gllug mailing list  -  Gllug at gllug.org.uk
http://lists.gllug.org.uk/mailman/listinfo/gllug




More information about the GLLUG mailing list