On 18.05.2013 17:49, Dominique Dumont wrote:
Hello
I'm using vdr 2.0.1 on Debian (with Debian package) and xineliboutput (also
provided by Debian).
I can connect xine on vdr, but once I hit 'ESC' to get the main menu, vdr
segfaults.
Here's the backtrace:
Core was generated by `/usr/bin/vdr -v /mnt/video2/vdr -c /var/lib/vdr -L
/usr/lib/vdr/plugins -r /usr'.
Program terminated with signal 11, Segmentation fault.
#0 0x00000000004eee4f in cSkinLCARSDisplayMenu::DrawLive (this=0x21c1c70,
Channel=0x0) at skinlcars.c:1344
warning: Source file is more recent than executable.
1344 osd->DrawText(xa00, yt00, itoa(Channel->Number()),
Theme.Color(clrChannelFrameFg), Theme.Color(clrChannelFrameBg),
tallFont, xa02 - xa00, yt02 - yt00, taTop | taRight | taBorder);
(gdb) bt
#0 0x00000000004eee4f in cSkinLCARSDisplayMenu::DrawLive (this=0x21c1c70,
Channel=0x0) at skinlcars.c:1344
#1 0x00000000004ef0f2 in cSkinLCARSDisplayMenu::Flush (this=0x21c1c70) at
skinlcars.c:1659
#2 0x00000000004a5124 in cInterface::GetKey (this=0x21788e0, Wait=true) at
interface.c:35
#3 0x00000000004732d5 in main (argc=<optimized out>, argv=<optimized out>) at
vdr.c:1016
Note that I've found this message in my logs:
[xine..put] cXinelibOsd::CanHandleAreas(): Device does not support ARGB
Since the theme colors looks like they are specified as ARGB, this may hint at
a problem there.
The problem appears to be that there is no current channel. I don't know
how this could happen on your system, because normally there always is s
current channel. However, you could try adding these lines to skinlcars.c
in function cSkinLCARSDisplayMenu::DrawLive():
DrawMainFrameUpper(Theme.Color(clrChannelFrameBg));
osd->DrawText(xd00, yd00, tr("LIVE"), Theme.Color(clrChannelFrameBg),
Theme.Color(clrBackground), tallFont, xd07 - xd00, yd01 - yd00, taTop | taRight | taBorder);
}
+ if (!Channel)
+ return;
if (initial || Channel != lastChannel) {
osd->DrawText(xa00, yt00, itoa(Channel->Number()),
Theme.Color(clrChannelFrameFg), Theme.Color(clrChannelFrameBg), tallFont, xa02 -
xa00, yt02 - yt00, taTop | taRight | taBorder);
osd->DrawText(xa03, yt00, Channel->Name(), Theme.Color(clrChannelName),
Theme.Color(clrBackground), tallFont, xd00 - xa03, yd01 - yd00, taTop | taLeft);
Klaus
_______________________________________________
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr