MegaV0lt / vdr-plugin-skinflatplus

Skin flatPlus ist ein schneller, moderner und aktueller Skin für VDR
GNU General Public License v2.0
0 stars 1 forks source link

beim aufruf der aufnahmen kommt es zu einem kernel trap #39

Closed rofehr closed 2 weeks ago

rofehr commented 3 weeks ago

Wenn ich den Menüpunkt 'Aufnahmen' wälhe, kommt es zu dieser Fehlermeldung.

traps: vdr[8727] trap divide error ip:7f3433123121 sp:7ffe6413daa0 error:0 in libvdr-skinflatplus.so.5[7f34330e7000+a5000]

und er VDR crasht.

Gruß, Roland

MegaV0lt commented 3 weeks ago

Vielen Dank für die Meldung.

Ich kann das leider hier nicht nachstellen. Ich brauche noch mehr Informationen.

Bei welcher Version tritt das auf? Bei welcher Version hat es noch funktioniert? VDR-Version und eventuell Distribution. Ist das Verzeichnis leer oder gibt es darin Aufnahmen

rofehr commented 3 weeks ago

Es ist der letzte git commit von dir.

graphicsmagick 1.3.39 VDR 2.7.3 MLD 6.5 mit Kernel 6.6.21 (https://www.minidvblinux.de/download) Aufnahmen sind da Wenn du noch mehr Info's brauchtst schreib einfach

MegaV0lt commented 3 weeks ago

Hallo noch mal. Leider kann ich den Fehler nicht nachstellen. :-(

Ich habe im dev2 Zweig mal ein paar Debug-Ausgaben eingebaut.

Ich vermute mal Du baust selbst aus den Quellen? Vielleicht sieht man ja im Log was.

rofehr commented 3 weeks ago

Ja wir bauen aus den quellen selbst, ich teste mal den dev2 branch

rofehr commented 3 weeks ago

Habe mal mit der dev2 Version getestet, da kommt dann folgendes

Nov 08 14:32:31 MLD vdr[10531]: [10531] flatPlus: cImageLoader::LoadIcon() '/usr/share/vdr/plugins/skinflatplus/icons/default/text_timer_full_cur.png' could not be loaded Nov 08 14:32:31 MLD vdr[10531]: [10531] flatPlus: cImageLoader::LoadIcon() '/usr/share/vdr/plugins/skinflatplus/icons/default/text_arrowturn_cur.png' could not be loaded Nov 08 14:32:31 MLD vdr[10531]: [10531] flatPlus: cImageLoader::LoadIcon() '/usr/share/vdr/plugins/skinflatplus/icons/default/timerRecording_cur.png' could not be loaded Nov 08 14:32:31 MLD vdr[10531]: [10531] flatPlus: cImageLoader::LoadIcon() '/usr/share/vdr/plugins/skinflatplus/icons/default/menuIcons/Recordings_cur.png' could not be loaded Nov 08 14:32:31 MLD vdr[10531]: [10531] flatPlus: cImageLoader::LoadIcon() '/usr/share/vdr/plugins/skinflatplus/icons/default/menuIcons/Recordings.png' could not be loaded Nov 08 14:32:31 MLD vdr[10531]: [10531] flatPlus: cImageLoader::LoadIcon() '/usr/share/vdr/plugins/skinflatplus/icons/default/menuIcons/blank.png' could not be loaded Nov 08 14:32:31 MLD kernel: traps: vdr[10531] trap divide error ip:7fbd79e5f1a8 sp:7ffdeb3bcfd0 error:0 in libvdr-skinflatplus.so.5[7fbd79e23000+a5000] Nov 08 14:32:31 MLD vdr[10531]: [10531] FlatPlus: cFlatDisplayMenu::MaxItems() Nov 08 14:32:31 MLD vdr[10531]: [10531] m_ItemRecordingHeight 36 Nov 08 14:32:31 MLD vdr[10531]: [10531] FlatPlus: cFlatDisplayMenu::MaxItems() Nov 08 14:32:31 MLD vdr[10531]: [10531] m_ItemRecordingHeight 36 Nov 08 14:32:31 MLD vdr[10531]: [10531] FlatPlus: cFlatDisplayMenu::MaxItems() Nov 08 14:32:31 MLD vdr[10531]: [10531] m_ItemRecordingHeight 36 Nov 08 14:32:31 MLD vdr[10531]: [10531] FlatPlus: cFlatDisplayMenu::MaxItems() Nov 08 14:32:31 MLD vdr[10531]: [10531] m_ItemRecordingHeight 36 Nov 08 14:32:31 MLD vdr[10531]: [10531] FlatPlus: cFlatBaseRender::ScrollBarDrawRaw() Total is 0!

Gruß, Roland

MegaV0lt commented 3 weeks ago

Hab mal eine Änderung in DrawScrollBar() gemacht. Ausgaben sehen bei mir so aus:

Nov 08 17:08:43 yavdr-vbox vdr[4709]: [4709] flatPlus: cFlatDisplayMenu::DrawScrollbar()
Nov 08 17:08:43 yavdr-vbox vdr[4709]: [4709]    Total: 3 Offset: 0 Shown: 15 Top: 0 Height: 660

Wenn Total 0 ist, wird keine Scrollbar gezeichnet. Probier mal was bei Dir passiert. Warum Total bei Dir 0 ist weiß ich nicht. Da muss ich noch mehr 'forschen'.

Probier mal was bei Dir passiert.

rofehr commented 3 weeks ago

Jetzt kommt nur noch

Nov 08 17:59:14 MLD kernel: vdr[2986]: segfault at 8 ip 00000000004b92cc sp 00007fffcd6abe60 error 4 in vdr[490000+130000] likely on CPU 0 (core 0, socket 0) Nov 08 17:59:14 MLD kernel: Code: 00 00 48 8b 55 f8 89 02 48 8b 45 f0 48 89 c7 e8 1a 00 00 00 48 8b 55 f8 89 42 04 90 c9 c3 55 48 89 e5 48 89 7d f8 48 8b 45 f8 <8b> 00 5d c3 55 48 89 e5 48 89 7d f8 48 8b 45 f8 8b 40 04 5d c3 90

der kommt ja auch nie hierhin if (Total > 0 && Total > Shown) {

denn Total war ja 0

wenn ich das richtig sehe wir die Total Variable ja an meheren Stellen genutzt, das scheint dann an einer anderen Stelle zu 'knallen'

wie und wann wird den Total gefüllt ?

MegaV0lt commented 3 weeks ago

So wie ich das sehe, kommt der Wert vom VDR. Aus skins.h:

  virtual void SetScrollbar(int Total, int Offset);
       ///< Sets the Total number of items in the currently displayed list, and the
       ///< Offset of the first item that is currently displayed (the skin knows how
       ///< many items it can display at once, see MaxItems()). This can be used to
       ///< display a scrollbar.

Blöde Frage: Laufen denn die anderen Skins wie z. B. NoPacity?

Startet das Skin denn überhaupt? Kannst Du mal ein Log von VDR-Start bis zum Absturz Posten? Zur Not auch einen Link nach PateBin oder Dropbox.

Dass blöde ist, dass es bei mir läuft...

rofehr commented 3 weeks ago

Ja andere Skins laufen, ich nutzte normal selber immer den Sinkdesigner, ein User der MLD hat das Problem gemeldet. Der Skin startet es geht auch alles, bis auf den Aufruf der Aufnahmen, dann crasht es.

Habe gerade auch nochmal mit vdr-plugin-skinsimple getestet, da ist es auch kein Problem.

rofehr commented 3 weeks ago

log.zip

Hier mal die Log's die wir bei der MLD automatisch erzeugen lassen können. Der Fehler ist um 20:06:55 im journal file.

Gruß und danke für deine Hilfe, Roland

MegaV0lt commented 2 weeks ago

Vielen Dank für das Log und das Testen.

Jetzt konnte ich den Fehler nachstellen. Es liegt an den nicht vorhandenen Logos. Im Skin hab ich die Stelle wo die Größe abgefragt so geändert, dass kein Zugriff au nicht geladene Logos erfolgt.

Bitte teste mal den dev2 Zweig

Bei mir klappt es jetzt auch ohne Bilder Auswahl_113

rofehr commented 2 weeks ago

TOP,

mit der dev2 Version geht es nun.

Danke und Gruß, Roland

MegaV0lt commented 2 weeks ago

Vielen Dank für das Melden und Testen.

Ich werde dann demnächst eine neue Version veröffentlichen, nach dem ich die ganzen Log-Meldungen bereinigt habe und eventuell baue ich noch was gegen die DIV/0 ein.

MegaV0lt commented 2 weeks ago

Fixed with https://github.com/MegaV0lt/vdr-plugin-skinflatplus/pull/40