Hallo Louis,
ZitatDie epgpics in der detaillierten EPG Anzeige sollten damit auch funktionieren.
Super, vielen Dank, funktioniert jetzt einwandfrei
Ich bin inzwischen wohl auch dahintergekommen, warum meine Skins manchmal bei Öffnen des Hauptmenüs abstürzen.
Backtrace:
(gdb) bt
#0 __GI___libc_free (mem=0x55) at malloc.c:2933
#1 0x00007f96c7870368 in skindesignerapi::cTokenContainer::DeleteLoopTokenContainer (this=this@entry=0xb3379d0) at tokencontainer.c:89
#2 0x00007f96c78704fb in skindesignerapi::cTokenContainer::Clear (this=this@entry=0xb3379d0) at tokencontainer.c:231
#3 0x00007f96c7870cb0 in skindesignerapi::cTokenContainer::~cTokenContainer (this=0xb3379d0, __in_chrg=<optimized out>) at tokencontainer.c:26
#4 0x00007f96c920e9c2 in cViewElement::~cViewElement (this=0xcf6b9a0, __in_chrg=<optimized out>) at coreengine/viewelement.c:60
#5 0x00007f96c92193c9 in cVeDmLastrecordings::~cVeDmLastrecordings (this=0xcf6b9a0, __in_chrg=<optimized out>) at coreengine/viewelementsdisplaymenu.c:809
#6 0x00007f96c9202b07 in cView::~cView (this=0xb1919b0, __in_chrg=<optimized out>) at coreengine/view.c:22
#7 0x00007f96c9204339 in cViewMenuMain::~cViewMenuMain (this=0xb1919b0, __in_chrg=<optimized out>) at coreengine/viewdisplaymenu.c:1069
#8 0x00007f96c9207d57 in cViewMenu::~cViewMenu (this=0xba74160, __in_chrg=<optimized out>) at coreengine/viewdisplaymenu.c:44
#9 0x00007f96c9207da9 in cViewMenu::~cViewMenu (this=0xba74160, __in_chrg=<optimized out>) at coreengine/viewdisplaymenu.c:46
#10 0x00007f96c91afccd in cSkinDesigner::DeleteViews (this=this@entry=0x1735f30) at designer.c:244
#11 0x00007f96c91aff24 in cSkinDesigner::LoadViews (this=this@entry=0x1735f30) at designer.c:282
#12 0x00007f96c91b0488 in cSkinDesigner::Init (this=this@entry=0x1735f30) at designer.c:210
#13 0x00007f96c91b0714 in cSkinDesigner::DisplayMenu (this=0x1735f30) at designer.c:50
#14 0x00000000004c9b15 in cOsdMenu::SetDisplayMenu (this=this@entry=0x1032f070) at osdbase.c:131
#15 0x00000000004abd8e in cMenuSetupOSD::ProcessKey (this=0x1032f070, Key=<optimized out>) at menu.c:3146
#16 0x00000000004cae7e in cOsdMenu::ProcessKey (this=0x102a4de0, Key=kOk) at osdbase.c:569
#17 0x00000000004bec2b in cMenuSetup::ProcessKey (this=0x102a4de0, Key=kOk) at menu.c:3892
#18 0x00000000004cae7e in cOsdMenu::ProcessKey (this=0xbb48bb0, Key=kOk) at osdbase.c:569
#19 0x00000000004bee20 in cMenuMain::ProcessKey (this=0xbb48bb0, Key=kOk) at menu.c:4092
sieht für mich als Laien so aus, dass es beim Löschen des LoopTokenContainers für die Lastrecordings kracht.
Ob das jetzt an meinen etwas kruden Konfigurationsmöglichkeiten für dieses Viewelement liegt oder am skindesigner kann ich nicht beurteilen, aber mit skindesigner-0.7.2 hat es so funktioniert.
<lastrecordings> im Skin sieht so aus:
<!--
indexpanelMain[0] = Keine Anzeige
indexpanelMain[1] = Zeige Infos und nur Timer
indexpanelMain[2] = Zeige Infos, vorrangig Timer, Rest lastrecs
indexpanelMain[3] = Zeige Infos, Timer und min 3 lastrecs
-->
<lastrecordings condition="gt({indexpanelMain}, 1)" delay="200" fadetime="0">
<area condition="eq({numtimers}, 6)++eq({indexpanelMain}, 2)" x="68%" y="80%" width="11%" height="18%" layer="3">
<loop name="recordings" x="0" y="0" orientation="horizontal" columnwidth="{areawidth}" rowheight="{areaheight}" overflow="cut">
<drawtext x="0" y="10%" align="center" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[date]} {recordings[time]}" />
<drawtextbox condition="isset{recordings[seriesname]}" x="4%" y="40%" width="{columnwidth}*0.85" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[seriesname]} - {recordings[name]}" />
<drawtextbox condition="empty{recordings[seriesname]}" x="4%" y="40%" width="{columnwidth}*0.85" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[name]}" />
</loop>
</area>
<area condition="eq({numtimers}, 5)++eq({indexpanelMain}, 2)" x="56%" y="80%" width="23%" height="18%" layer="3">
<loop name="recordings" x="0" y="0" orientation="horizontal" columnwidth="{areawidth}/2" rowheight="{areaheight}" overflow="cut">
<drawtext x="0" y="10%" align="center" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[date]} {recordings[time]}" />
<drawtextbox condition="isset{recordings[seriesname]}" x="5%" y="40%" width="{columnwidth}*0.8" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[seriesname]} - {recordings[name]}" />
<drawtextbox condition="empty{recordings[seriesname]}" x="5%" y="40%" width="{columnwidth}*0.8" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[name]}" />
</loop>
</area>
<area condition="gt({numtimers}, 4)++eq({indexpanelMain}, 3)" x="45%" y="80%" width="34%" height="18%" layer="3">
<loop name="recordings" x="0" y="0" orientation="horizontal" columnwidth="{areawidth}/3" rowheight="{areaheight}" overflow="cut">
<drawtext x="0" y="10%" align="center" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[date]} {recordings[time]}" />
<drawtextbox condition="isset{recordings[seriesname]}" x="2%" y="40%" width="{columnwidth}*0.9" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[seriesname]} - {recordings[name]}" />
<drawtextbox condition="empty{recordings[seriesname]}" x="2%" y="40%" width="{columnwidth}*0.9" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[name]}" />
</loop>
</area>
<area condition="eq({numtimers}, 4)" x="45%" y="80%" width="34%" height="18%" layer="3">
<loop name="recordings" x="0" y="0" orientation="horizontal" columnwidth="{areawidth}/3" rowheight="{areaheight}" overflow="cut">
<drawtext x="0" y="10%" align="center" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[date]} {recordings[time]}" />
<drawtextbox condition="isset{recordings[seriesname]}" x="2%" y="40%" width="{columnwidth}*0.9" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[seriesname]} - {recordings[name]}" />
<drawtextbox condition="empty{recordings[seriesname]}" x="2%" y="40%" width="{columnwidth}*0.9" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[name]}" />
</loop>
</area>
<area condition="eq({numtimers}, 3)" x="34%" y="80%" width="45%" height="18%" layer="3">
<loop name="recordings" x="0" y="0" orientation="horizontal" columnwidth="{areawidth}/4" rowheight="{areaheight}" overflow="cut">
<drawtext x="0" y="10%" align="center" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[date]} {recordings[time]}" />
<drawtextbox condition="isset{recordings[seriesname]}" x="2%" y="40%" width="{columnwidth}*0.9" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[seriesname]} - {recordings[name]}" />
<drawtextbox condition="empty{recordings[seriesname]}" x="2%" y="40%" width="{columnwidth}*0.9" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[name]}" />
</loop>
</area>
<area condition="eq({numtimers}, 2)" x="23%" y="80%" width="56%" height="18%" layer="3">
<loop name="recordings" x="0" y="0" orientation="horizontal" columnwidth="{areawidth}/5" rowheight="{areaheight}" overflow="cut">
<drawtext x="0" y="10%" align="center" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[date]} {recordings[time]}" />
<drawtextbox condition="isset{recordings[seriesname]}" x="1%" y="40%" width="{columnwidth}*0.9" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[seriesname]} - {recordings[name]}" />
<drawtextbox condition="empty{recordings[seriesname]}" x="1%" y="40%" width="{columnwidth}*0.9" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[name]}" />
</loop>
</area>
<area condition="eq({numtimers}, 1)" x="12%" y="80%" width="67%" height="18%" layer="3">
<loop name="recordings" x="0" y="0" orientation="horizontal" columnwidth="{areawidth}/6" rowheight="{areaheight}" overflow="cut">
<drawtext x="0" y="10%" align="center" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[date]} {recordings[time]}" />
<drawtextbox condition="isset{recordings[seriesname]}" x="1%" y="40%" width="{columnwidth}*0.875" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[seriesname]} - {recordings[name]}" />
<drawtextbox condition="empty{recordings[seriesname]}" x="1%" y="40%" width="{columnwidth}*0.875" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[name]}" />
</loop>
</area>
<area condition="eq({numtimers}, 0)" x="1%" y="80%" width="78%" height="18%" layer="3">
<loop name="recordings" x="0" y="0" orientation="horizontal" columnwidth="{areawidth}/7" rowheight="{areaheight}" overflow="cut">
<drawtext x="0" y="10%" align="center" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[date]} {recordings[time]}" />
<drawtextbox condition="isset{recordings[seriesname]}" x="1%" y="40%" width="{columnwidth}*0.875" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[seriesname]} - {recordings[name]}" />
<drawtextbox condition="empty{recordings[seriesname]}" x="1%" y="40%" width="{columnwidth}*0.875" align="center" maxlines="3" font="{light}" fontsize="15%" color="{clrLightGray}" text="{recordings[name]}" />
</loop>
</area>
</lastrecordings>
Wenn ich <lastrecordings> weglasse, gibt es keine Abstürze mehr. Da alle deine umgestellten Skins dieses viewelement nicht mehr nutzen, kann ich nicht gegentesten.
Gruß,
Tomas