On 02.12.2013 17:55, Klaus Schmidinger wrote:
On 02.12.2013 13:15, Lou wrote:
hi list
vdr 2.1.2 segfaults in libc, as soon as I use the terminal syntax (vdr --genindex) to recreate a missing index file. Trying the same thing in a user interface (vdr-sxfe) works as planed.
Here's a backtrace of what's happing:
/usr/local/src/vdr/vdr-2.1.2/vdr --genindex=/var/lib/video/True_blood/At_last/2013-11-29.00.30.203-0.rec/
Speicherzugriffsfehler (Speicherabzug geschrieben)
gdb /usr/local/src/vdr/vdr-2.1.2/vdr ./core
Reading symbols from /usr/local/src/vdr/vdr-2.1.2/vdr...done.
Loaded symbols for /lib/i686/cmov/libc.so.6
<<snip>>
Core was generated by `/usr/local/src/vdr/vdr-2.1.2/vdr --genindex=/var/lib/video/True_blood/At_l'.
Program terminated with signal 11, Segmentation fault.
#0 0xb7496df5 in ?? () from /lib/i686/cmov/libc.so.6
(gdb) bt
#0 0xb7496df5 in ?? () from /lib/i686/cmov/libc.so.6
#1 0x0813b644 in strstr (this=0xbfb16560, FileName=0x82600a8 "/var/lib/video/True_blood/At_last/2013-11-29.00.30.203-0.rec") at /usr/include/string.h:335
#2 cRecording (this=0xbfb16560, FileName=0x82600a8 "/var/lib/video/True_blood/At_last/2013-11-29.00.30.203-0.rec") at recording.c:814
#3 0x0813be54 in GenerateIndex (FileName=0xbfb177ee "/var/lib/video/True_blood/At_last/2013-11-29.00.30.203-0.rec/") at recording.c:2679
#4 0x0818c589 in main (argc=2, argv=0xbfb16904) at vdr.c:345
I guess this was caused by the changes to videodir.[ch].
For a quick fix you could try moving the line
cVideoDirectory::SetName(VideoDirectory);
into the
case 'v': VideoDirectory = optarg;
while (optarg && *optarg && optarg[strlen(optarg) - 1] == '/')
optarg[strlen(optarg) - 1] = 0;
cVideoDirectory::SetName(VideoDirectory); // <----- here!
break;
in vdr.c
Oh, and use the option '-v'...
This is just a quick hack - I'll need to give this more thought.
Klaus
_______________________________________________
vdr mailing list
vdr@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr