Posts by ritzMo

    Also hast du tatsächlich knapp 15 Minuten gewartet bis du die Frage in einem anderen Forum gestellt hast oder laufen die Systemuhren so unterschiedlich?


    Auch wenn man grundsätzlich solch ein Verhalten nicht unterstützen sollte - anderorts hatte ich bereits geantwortet und bevor das ganze hier unbeantwortet bleibt:

    Quote

    Die Codes ändern sich nicht, die sind da brav und halten sich im Gegensatz zu anderen Herstellern an die Standards smile
    Die Tastenbelegung allerdings macht einen Unterschied.


    Setz mal den Typen explizit mit dem Parameter

    Code
    1. rcu=advanced


    Wenn das NICHT die Lösung ist bitte die Diskussion an dem anderen Ort und hier dann nur das Ergebnis. Denkt doch an die Leute mit Traffic-Limit ;)

    Der Grund ist Enigma2 4.2.1r2.
    Darin wurde die close-Methode des Basiswizards überschrieben, womit sie jetzt keinen Argumente mehr akzeptiert (ausser dem impliziten self).


    Quick & Dirty-Workaround wäre, alles was dazwischenliegende close-Methoden ausführen selber zu erledigen und dann direkt zu Screen.close zu gehen - das wird aber nur in Zukunft zu weiteren Problemen führen.
    Ich denke die Möglichkeit zusätzlicher Argumente wurde einfach übersehen - dann müsste man drauf hoffen, dass ein Dev auf diesen Thread aufmerksam wird… ;)

    Ich hoffe du bist nicht der, dem ich grade via E-Mail geantwortet hab.




    Der "unknown error" tritt unpraktischerweise nur dann auf, wenn der tatsächliche Fehler wirklich unbekannt ist.
    Das Backend sollte ein e2simplexmlresult zurückliefern und tut es nicht - meistens ist das eine HTML-Formatierte Fehlerseite, muss aber auch nicht.


    Das ganze mal über das native Webinterface probieren, der Browser kann da eventuell mehr sagen.

    Das Problem sollte inzwischen umgangen sein.
    Apple hat scheinbar was an den AppStore-spezifischen Dateien geändert und statt mich darüber zu informieren (sie hatten alle notwendigen Infos) dann ohne Absprache das Update doch veröffentlicht.

    Mal ganz im Ernst: Irgendwas läuft da mit deinem E2 nicht richtig, wenn du mich fragst.


    Hab 'nen Workaround gepusht, aber wenn irgendwas die Variable einmal gelöscht hat, kann es das durchaus auch wieder tun - also keinerlei Garantie, da andere Zugriffe nicht geschützt sind.

    Entweder
    - die Box Abends in den Standby schicken
    oder
    - im Hauptbild Aktualisieren und selbiges erzwingen.
    So wird das durchgeführt und es wird keine Aufnahme unterbrochen.



    Nicht im Standby: Plugin nimmt an ihr seht fern – wie soll es das auch besser wissen? – und tut nichts.
    Erzwungen und nicht im Hauptbild: Könnte in Grenzfällen Aufnahmen stören, auch wenn das Plugin um selbige eigentlich versucht einen weiten Bogen zu machen.

    Wenn ich einen neuen AutoTimer Eintrag erstellen will kriege ich reproduzierbar einen GreenScreen


    Sollte im master korrigiert sein.



    Erst einmal: falscher Thread.
    Dann: Ja, ist normal.

    Reichi dir ist aber schon klar, dass deine Änderung das ganze Editing negiert? ;)


    Das ganze gehört anders.



    Was passiert? Kann ich dir sagen:
    Der AutoTimer arbeitet in diesem Fall nicht im Hintergrund, wird also Verlassen des Plugin und evt. durchsuchen des EPG wieder beendet.
    Wenn man jetzt aber während Suche 1 wieder in die GUI geht kann es vorkommen, dass das AutoTimer-Objekt nicht mehr vorhanden ist (hence the Crash).


    Dein Workaround betrifft nur genau den einen Fall, die gesamte GUI geht aber davon aus, dass das Objekt existiert - sprich jede andere Option ausser "Verlassen" schlägt ebenfalls fehl.

    Siehe dazu auch HIER.
    Ein paar mehr Infos woran es liegen könnte (Hint: der AutoTimer ist es nicht ;)) und leider auch die Erkenntnis, dass sich daran so bald nichts ändert.


    Oh, aber gerne diesen oder meinen Thread bumpen, wenn es euch mal wieder stört. Vllt nervt es die Devs dann irgendwann genug, dass sie sich dem mal annehmen :P

    Hintergrund: Ursprünglich wurde die Statusmeldung direkt in einem screen geöffnet, das war aber nicht richtig. Dann hab ich den NotifiablePluginBrowser eingeführt, der hat den Leuten vom Merlin nicht gefallen. Die folgende Implementierung war nicht korrekt aber es hat sich bis heute keiner damit bei mir gemeldet. Wollte den Reichi aber nicht weiter ärgern ;)


    War eigentlich ganz gut in den git logs zu finden, man muss nur tatsächlich danach suchen.



    *EDIT* Und von einem Battle hat das mal gar nichts.

    Die Komplexität des AutoTimer würde unproportional zum Nutzen zunehmen.


    Mit gewissen Einstellungen kann die Suche (nicht die "Suche" von Enigma2, sondern die erweiterten Suchoptionen im Plugin) locker > 30s dauern - soll das wirklich blockierend im MainThread gemacht werden?
    Und durch die Art und Weise wie der RecordTimer inkl. TimerSanityCheck implementiert ist, können die also nur vom MainThread aufgerufen werden.


    Du hast nicht richtig gelesen - nicht der AutoTimer ist da schlecht, sondern Enigma2 ;)


    Der AutoTimer müsste MASSIV Threads spawnen, die immer bei einem möglichen Match zurück zum MainThread springen um zu versuchen eine Aufnahme zu starten um dann wieder zurück in einen Child zu wechseln.
    Im Endeffekt würde das ganze dadurch nur noch langsamer werden - ein wenig Threadsafety der entsprechenden Funktionen in Enigma2 ist trivialer ;)


    *EDIT* Grad erst Ghosts Reply gesehen. Wie schon geschrieben gibt es etwaige Funktionen im AutoTimer die durchaus > 30s laufen bei einem Haufen Nutzer (und für mich selbst läuft eine Funktion spätestens dann zu lang, wenn ich die grauenhaften Zahnräder sehe). Deshalb sind im AutoTimer WebInterface einige Requests in Threads gepackt. Und der benannte Commit war halt beim Wechsel von Opendreambox 1.6 auf 2.0 notwendig.

    Threading in Opendreambox 2.0 basierten Images suckt und ohne Threading suckt der AutoTimer.


    Siehe z.B. im WebIf, dass write/finish des request zwingend vom Coder auf dem Mainthread ausgeführt werden müssen (siehe 120418473e2f851c5092bc42382eddd7f07d0159, sonst gab jeder threaded request im AutoTimer die Fehlermeldung).




    Ein voll asynchrones arbeiten mit vor- und zurückspringen aus/in den Mainthread erfordert einen umfangreichen Rewrite des parsing-Codes und dafür habe ich weder Lust noch Zeit. Plus das macht den Code unwartbar(er)…
    Oh, ich habe übrigens keine Ahnung warum bei manchen Leuten eine Aufnahme nur aus dem Mainthread gestartet werden kann. Ich nehme mir ein Beispiel an der Politik und gebe spontan einfach jeder anderen Zeile Code die Schuld ;)