[vdr] sysinfo 0.1.0a

Diego Pierotto vdr_mlist at tiscali.it
Mon Jun 1 23:09:38 CEST 2009


Scott Waye ha scritto:
> Hi,
>
> I am trying to get this plugin working with vdr 1.7.7.  When I bring it
> up from the menu it segmentation faults.  The relevant sections from the
> backtrace are :
>
> #0  0x00000000004a4b2d in cBitmap::DrawText (this=0x2acb4e0, x=10, y=3, 
>     s=0x7fdb8302fb90 "SysInfo 0.1.0a", ColorFg=4278190080,
> ColorBg=2164260863, 
>     Font=0x754040, Width=0, Height=0, Alignment=5) at osd.c:454
> 454	     int w = Font->Width(s);
>
> And the full thread bt is
>
> Thread 1 (process 31944):
> #0  0x00000000004a4b2d in cBitmap::DrawText (this=0x2acb4e0, x=10, y=3, 
>     s=0x7fdb8302fb90 "SysInfo 0.1.0a", ColorFg=4278190080,
> ColorBg=2164260863, 
>     Font=0x754040, Width=0, Height=0, Alignment=5) at osd.c:454
> 	w = <value optimized out>
> 	limit = <value optimized out>
> 	cw = <value optimized out>
> 	h = <value optimized out>
> 	ch = <value optimized out>
> #1  0x00000000004a5b3a in cOsd::DrawText (this=0x12b5f80, x=10, y=3, 
>     s=0x7fdb8302fb90 "SysInfo 0.1.0a", ColorFg=4278190080,
> ColorBg=2164260863, 
>     Font=0x754040, Width=0, Height=0, Alignment=5) at osd.c:856
> 	i = 1
> #2  0x00007fdb8325a34e in PluginXine::cXineOsd::DrawText
> (this=0x12b5f80, 
>     x=10, y=3, s=0x7fdb8302fb90 "SysInfo 0.1.0a", ColorFg=4278190080, 
> ---Type <return> to continue, or q <return> to quit--- 
>     ColorBg=2164260863, Font=0x754040, Width=0, Height=0, Alignment=5)
>     at xineOsd.c:331
> 	osdLock = {mutex = 0x7fdb85342f40, locked = true}
> #3  0x00007fdb8302cc33 in cSysInfoOsd::DrawMenu (this=0x2ad3f50)
>     at sysinfoosd.c:204
> No locals.
> #4  0x00007fdb8302cd33 in cSysInfoOsd::PleaseWait (this=0x754040)
>     at sysinfoosd.c:96
> 	cTemp = "\200_+\001\000\000\000\000\222pJ\000\000\000\000\000\006\000
> \000\000\000\000\000\000\200_+\001\001\000\000\000\000\000\000\000\001
> \000\000\000\001\000\000\000\000\000\000\000\006\000\000\000\000\000\000
> \000\200_+\001\000\000\000\000\200�N\215�\177\000\00009\225\000\000\000
> \000\000\001\000\000\000\000\000\000\000\226�%\203�\177\000\000@/4\205"
> #5  0x00007fdb8302ce71 in cSysInfoOsd::Show (this=0x2ad3f50) at
> sysinfoosd.c:87
> 	Area = {x1 = 0, y1 = 0, x2 = 623, y2 = 483, bpp = 2}
> #6  0x00000000004dec52 in main (argc=<value optimized out>, 
>     argv=<value optimized out>) at vdr.c:1154
> 	state = osPlugin
> 	Now = 1243887926
> 	Interact = (class cOsdObject *) 0xe0caf0
> 	key = kOk
> 	savedTm = {c_iflag = 7595072, c_oflag = 0, c_cflag = 1040, 
>   c_lflag = 0, c_line = 0 '\0', 
>   c_cc = "�\217\203�\177\000\000p\231L\205�\177\000\000 \004\000\000\000
> \000\000\000����\000\000\000\000�", c_ispeed = 32731, c_ospeed =
> 7558488}
> 	HasStdin = false
> 	StartedAsRoot = <value optimized out>
> 	VdrUser = 0x0
> 	UserDump = false
> 	SVDRPport = 2001
> 	AudioCommand = 0x0
> 	ConfigDirectory = 0x7fff8d4eee6f "/etc/vdr"
> 	EpgDataFileName = 0x504bd9 "epg.data"
> 	DisplayHelp = 48
> 	DisplayVersion = false
> 	DaemonMode = false
> 	SysLogTarget = <value optimized out>
> 	MuteAudio = false
> 	WatchdogTimeout = 60
> 	Terminal = 0x1 <Address 0x1 out of bounds>
> 	LocaleDir = 0x0
> 	UseKbd = true
> 	LircDevice = 0x0
> 	RcuDevice = 0x0
> 	PluginManager = {_vptr.cPluginManager = 0x4fac10, 
>   static pluginManager = 0x7fff8d4ede70, 
>   directory = 0x74e0b0 "/etc/vdr/plugins/lib", lastHousekeeping =
> 1243887910, 
> ---Type <return> to continue, or q <return> to quit---
>   nextHousekeeping = 0, dlls = {<cList<cDll>> = {<cListBase> = {
>         _vptr.cListBase = 0x4fadb0, objects = 0x74e0f0, lastObject =
> 0x74e1e0, 
>         count = 2}, <No data fields>}, <No data fields>}}
> 	c = <value optimized out>
> 	CodeSet = <value optimized out>
> 	Menu = (class cOsdObject *) 0x754040
> 	LastChannel = 6
> 	LastTimerChannel = -1
> 	PreviousChannel = {1, 6}
> 	PreviousChannelIndex = 1
> 	LastChannelChanged = 1243887689
> 	LastInteract = 1243887926
> 	MaxLatencyTime = 1
> 	InhibitEpgScan = false
> 	IsInfoMenu = false
> 	CheckHasProgramme = false
> 	CurrentSkin = <value optimized out>
> 	long_options = {{name = 0x4f1b2d "audio", has_arg = 1, flag = 0x0, 
>     val = 97}, {name = 0x504e9d "config", has_arg = 1, flag = 0x0, val =
> 99}, {
>     name = 0x504ea4 "daemon", has_arg = 0, flag = 0x0, val = 100}, {
>     name = 0x504eab "device", has_arg = 1, flag = 0x0, val = 68}, {
>     name = 0x504eb2 "epgfile", has_arg = 1, flag = 0x0, val = 69}, {
>     name = 0x504eba "grab", has_arg = 1, flag = 0x0, val = 103}, {
>     name = 0x504ebf "help", has_arg = 0, flag = 0x0, val = 104}, {
>     name = 0x504ec4 "instance", has_arg = 1, flag = 0x0, val = 105}, {
>     name = 0x504bd5 "lib", has_arg = 1, flag = 0x0, val = 76}, {
>     name = 0x504ecd "lirc", has_arg = 2, flag = 0x0, val = 364}, {
>     name = 0x504ed2 "localedir", has_arg = 1, flag = 0x0, val = 620}, {
>     name = 0x504edc "log", has_arg = 1, flag = 0x0, val = 108}, {
>     name = 0x501208 "mute", has_arg = 0, flag = 0x0, val = 109}, {
>     name = 0x504ee0 "no-kbd", has_arg = 0, flag = 0x0, val = 366}, {
>     name = 0x504ee7 "plugin", has_arg = 1, flag = 0x0, val = 80}, {
>     name = 0x504eee "port", has_arg = 1, flag = 0x0, val = 112}, {
>     name = 0x504ef3 "rcu", has_arg = 2, flag = 0x0, val = 370}, {
>     name = 0x504ef7 "record", has_arg = 1, flag = 0x0, val = 114}, {
>     name = 0x504efe "shutdown", has_arg = 1, flag = 0x0, val = 115}, {
>     name = 0x504f07 "terminal", has_arg = 1, flag = 0x0, val = 116}, {
>     name = 0x504f10 "user", has_arg = 1, flag = 0x0, val = 117}, {
>     name = 0x504f15 "userdump", has_arg = 0, flag = 0x0, val = 373}, {
>     name = 0x4f65cc "version", has_arg = 0, flag = 0x0, val = 86}, {
>     name = 0x504f1e "vfat", has_arg = 0, flag = 0x0, val = 374}, {
>     name = 0x504c92 "video", has_arg = 1, flag = 0x0, val = 118}, {
>     name = 0x504f23 "watchdog", has_arg = 1, flag = 0x0, val = 119}, {
>     name = 0x0, has_arg = 0, flag = 0x0, val = 0}}
> 	lastTime = 0
> 	ChannelSaveTimeout = 1243888290
> 	TimerState = 0
> ---Type <return> to continue, or q <return> to quit---#
> 	LastTimerCheck = 1243887920
> 	DeviceUsed = {0 <repeats 16 times>}
>
> to me this looks like the Font passed into DrawText is invalid.  This is
> set up in sysinfoosd.h thus:
>
> static const cFont *font = cFont::GetFont(fontOsd);
>
> Is there something obvious here that someone with more experience of the
> code can spot?
>
> Thanks,
>
> Scott
>
>
> _______________________________________________
> vdr mailing list
> vdr at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>   
I'm using systeminfo-0.1.1 cause the version you use has some problems
with VDR 1.6.x. I don't know if with 1.7.x is running well.


-- 
Member of the Italian VDR Wiki
http://vdr.spaghettilinux.org/




More information about the vdr mailing list