Mudlet: Durch das Verschieben von Skripten und Ordnern werden andere gelöscht

Erstellt am 25. Nov. 2020  ·  7Kommentare  ·  Quelle: Mudlet/Mudlet

Kurze Zusammenfassung des Problems / Beschreibung der angeforderten Funktion:

vanish

Schritte zum Reproduzieren des Problems / Gründe für das Hinzufügen einer Funktion:

  1. Ziehen Sie ein Element in einen Ordner oder direkt über / unter einen Ordner, um es an eine benachbarte Position zu verschieben
  2. Der Artikel wird in Ordnung am Bestimmungsort ankommen
  3. Das letzte andere Element in diesem Ordner wird gelöscht

Fehlerausgabe / Erwartetes Ergebnis der Funktion

  1. Andere Gegenstände sollten niemals betroffen sein

Zusätzliche Informationen wie Mudlet-Version, Betriebssystem und Ideen zur Lösung / Implementierung:

Notiert in Win10, Mudlet PTB 2020-11-25-b33b6
Während Mudlet Release Version 4.10.1 immer noch gut funktioniert

bug high regression

Hilfreichster Kommentar

Nach dem Zusammenführen von 4415 kehrte dieser Fehler immer noch nicht zurück. Hurra!

Alle 7 Kommentare

Ja, großer. Passiert dies auch bei echten Gegenständen oder nur bei den leeren 'New Triggers'?

In der Tat. So habe ich es bemerkt .. 😢

Dies ist nur ein kleines kurzes Beispiel für Ihren Vergleich.

Außerdem habe ich festgestellt, dass in einigen Fällen nur einige (aber nicht alle) der verschobenen Elemente nach dem Schließen und Öffnen des Profils wieder angezeigt werden. Das erneute Öffnen des Skript-Editors reicht nicht aus.

Ein weiterer möglicherweise verwandter Folgefehler, den ich bemerkt habe, ist, dass das Kopieren / Einfügen ebenfalls fehlerhaft ist. Wenn ich Skript A aus dem Unterordner B / C kopiere und es in den Unterordner D / E einfügen möchte, wird der Zielordner stattdessen verschoben den ursprünglichen Ordner und fügen Sie das Skript dort wie B / C / D / E / A ein

In den letzten Commits gibt es nur wenige, die diesen Codebereich berühren.
Suchen Sie, wo Sie kompilierte Versionen der jüngsten Entwicklung für einen Kreuzvergleich abrufen können, um sie einzugrenzen.

Ich habe es halbiert auf b33b6c8dc3928a6aaa2fcc6ae182e54ec89b5768. @SlySven , könntest du dir das

Kann ich diese wieder öffnen - die PR / Commit , dass die Schuldigen sein nicht möglich beurteilt wurde , scheint der Täter zu sein - AFAICT.

Angesichts der Art der Fehler vermute ich jedoch, dass die erste der beiden Methoden entfernt wurde:

  • (void) TTreeWidget::rowsAboutToBeRemoved(const QModelIndex& parent, int start, int end)
  • (void) TTreeWidget::beginInsertRows(const QModelIndex& parent, int first, int last)

(Der zweite ist leer von aktuellem Code und ist ein Dummy)

Das Seltsame ist, dass diese Methoden definiert sind - aber anscheinend nicht von irgendwoher aufgerufen werden -, weshalb ich dachte, es wäre in Ordnung, sie herauszuschneiden ...

... jedoch, da Qt (void) QTreeWidget::rowsAboutToBeRemoved(const QModelIndex& parent, int start, int end) als [override virtual protected] dokumentiert, habe ich das böse Gefühl, von einer C ++ - Funktion gebissen zu werden, die mich überrascht hat!

Nun ja, ohne diese Änderungen erneut einreichen, dann können wir erneut testen.

Fügen Sie hier möglicherweise einen Link als kurzen Kommentar hinzu, warum wir die leere Funktion benötigen.

Okay, können wir überprüfen, ob der Ersatz für den PR # 4383, dh # 4415, dieses Problem / diesen Fehler NICHT anzeigt ...?

Fügen Sie hier möglicherweise einen Link als kurzen Kommentar hinzu, warum wir die leere Funktion benötigen.

Nachdem ich mir die Finger verbrannt habe, lege ich es einfach zurück und lasse es ...!

Nach dem Zusammenführen von 4415 kehrte dieser Fehler immer noch nicht zurück. Hurra!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen