[vdr] Vdr core dump when tuning to FR3

Helmut Auer vdr at helmutauer.de
Thu Feb 16 19:33:17 CET 2006


Hi
> Until 2 days ago, tuning to 'FRANCE 3' (french channed available on
> hot-bird) worked perfectly.
>
> But now, vdr core dumps any time I try to tune to 'FRANCE 3'. I've
> tried with vdr 1.3.42 (vanilla), 1.3.39 (debian) or 1.3.42 (Darren
> Salt's)
>
> Here's the stacktrace done with vanilla 1.4.42:
>
>
> (gdb) bt
> #0  0xffffe410 in __kernel_vsyscall ()
> #1  0xb7d556d1 in raise () from /lib/tls/i686/cmov/libc.so.6
> #2  0xb7d56f9b in abort () from /lib/tls/i686/cmov/libc.so.6
> #3  0xb7f48e51 in __gnu_cxx::__verbose_terminate_handler ()
>    from /usr/lib/libstdc++.so.6
> #4  0xb7f46765 in __gxx_personality_v0 () from /usr/lib/libstdc++.so.6
> #5  0xb7f467a2 in std::terminate () from /usr/lib/libstdc++.so.6
> #6  0xb7f4690a in __cxa_throw () from /usr/lib/libstdc++.so.6
> #7  0xb7f46d51 in operator new () from /usr/lib/libstdc++.so.6
> #8  0xb7f46e1d in operator new[] () from /usr/lib/libstdc++.so.6
> #9  0x0810f283 in SI::CharArray::DataOwnData::assign (this=0x83f2910, d=0x0, 
>     s=4294967295) at util.c:123
> #10 0x0810f7cc in SI::CharArray::assign (this=0x83f29b8, 
>     data=0x6 <Address 0x6 out of bounds>, size=6, doCopy=true) at util.c:61
> #11 0x081162b3 in SI::CaDescriptor::Parse (this=0x83f29b8) at descriptor.c:332
> #12 0x0810f52d in SI::Parsable::CheckParse (this=0x6) at util.c:181
> #13 0x0811104a in SI::DescriptorLoop::createDescriptor (this=0xb7b662b0, 
>     i=@0xb7b66354, returnUnimplemetedDescriptor=true) at si.c:162
> #14 0x081112af in SI::DescriptorLoop::getNext (this=0xb7b662b0, it=@0xb7b66354)
>     at si.c:110
> #15 0x080d2d82 in cPatFilter::Process (this=0x83be480, Pid=100, Tid=2 '\002', 
>     Data=0xb7b66414 "\002°\202\004MÕ", Length=133) at pat.c:380
> #16 0x080e67fe in cSectionHandler::Action (this=0x83ac438) at sections.c:212
> #17 0x08100200 in cThread::StartThread (Thread=0x83ac438) at thread.c:243
> #18 0xb7f80e60 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
> #19 0xb7dfd8ce in clone () from /lib/tls/i686/cmov/libc.so.6
>
>
> line #12 is suspect with this=0x6
> Line #15 is also interesting.
>
> Can someone help in debuggin this ? 
>
> I think you'll get the core when you tune to 'FRANCE 3' even without a
> subcription:
>
>   FRANCE 3:10834:vC34:S13.0E:27500:520:530:0:1:1105:176:11600:0
>
>   
You can try this quick and dirty change:

--- ../../vdr-1.3.42/libsi/util.c       2005-05-28 16:15:29.000000000 +0200
+++ util.c      2006-02-16 19:30:10.000000000 +0100
@@ -120,6 +120,9 @@
 void CharArray::DataOwnData::assign(const unsigned char*d, unsigned int s) {
    Delete();
    size=s;
+   if (size > 10000) {
+      size=10000;
+   }
    unsigned char *newdata=new unsigned char[size];
    memcpy(newdata, d, size);
    data=newdata;


---
Helmut




More information about the vdr mailing list