Eintragsdetails ansehen

IDProjektKategorieSichtbarkeitZuletzt aktualisiert
0002945CsMapFXBugsöffentlich2023-02-19 12:04
ReporterEnno Bearbeitung durchEnno  
PrioritätnormalSchweregradAbsturzReproduzierbarimmer
Status erledigtLösungerledigt 
Produktversion1.5 
Zielversion1.6Behoben in Version1.5 
Zusammenfassung0002945: crash nach merge, in regionlist
Beschreibung

Ich erlebe mit dem aktuellen Report einen Crash in FXRegionList::isBold, wo item->getData() auf einen ungültigen datablock zeigt.

Schritte zur Reproduktion
  1. Datei laden: enno.cr
  2. In der Regionsliste die erste Region aufklappen, so dass man die Einheiten sieht.
  3. Datei hinzufügen: 1298-enno.cr
  4. Crash bei der Berechnung der Höhe eines ListItems.
Zusätzliche Informationen

Beim Merge in dieser Reihenfolge wird der neue Report den alten ersetzen, nehme ich an, und wenn die Regionlist nicht neu erstellt wird, sind ihre userdata Zeiger alle kaputt.

TagsKeine Tags zugeordnet.

Notizen / Dateien

Enno

Enno

2023-02-18 22:23

Administrator   ~0009923

Call Stack:

csmapfx.exe!datablock::type() Line 269 C++ csmapfx.exe!FXRegionItem::getWidth(const FX::FXTreeList l) Line 147 C++ csmapfx.exe!FX::FXTreeList::onPaint(FX::FXObject formal, unsigned int formal, void ptr) Line 1176 C++ csmapfx.exe!FX::FXTreeList::handle(FX::FXObject sender, unsigned int sel, void ptr) Line 384 C++ csmapfx.exe!FXRegionList::handle(FX::FXObject sender, unsigned int sel, void ptr) Line 200 C++ csmapfx.exe!FX::FXApp::dispatchEvent(void hwnd, unsigned int iMsg, unsigned long wParam, long lParam) Line 3778 C++

Enno

Enno

2023-02-18 22:27

Administrator   ~0009924

Spannend: Die Einheiten, die ich durch das öffnen von Tohopekaliga sehe, sind diese Woche alle nach Manethren gesegelt. Wenn ich eine von ihnen selektiere, ehe ich den neuen Report hinzufüge, springt der Cursor in die neue Region, und es gibt keinen CRash (Tohopekaliga wird wieder zusammen gefaltet, Manetheren geöffnet).

Enno

Enno

2023-02-18 22:32

Administrator   ~0009925

Zuletzt bearbeitet: 2023-02-18 22:36

Und plötzlich kann ich es nicht mehr reproduzieren ... Na, klar. Dafür stirbt es dann, wenn ich Datei -> Schliessen mache, an ähnlicher Stelle.

csmapfx.exe!datablock::type() Line 269 C++ csmapfx.exe!FXRegionItem::getHeight(const FX::FXTreeList l) Line 168 C++ csmapfx.exe!FX::FXTreeList::getItemAt(int __formal, int y) Line 774 C++ csmapfx.exe!FX::FXTreeList::onMotion(FX::FXObject formal, unsigned int formal, void ptr) Line 1600 C++ csmapfx.exe!FX::FXTreeList::handle(FX::FXObject sender, unsigned int sel, void ptr) Line 384 C++ csmapfx.exe!FXRegionList::handle(FX::FXObject sender, unsigned int sel, void ptr) Line 200 C++ csmapfx.exe!FX::FXApp::dispatchEvent(void hwnd, unsigned int iMsg, unsigned long wParam, long lParam) Line 3996 C++ [External Code]

Enno

Enno

2023-02-18 22:41

Administrator   ~0009926

Zuletzt bearbeitet: 2023-02-18 22:41

Vereinfachte Reproduktion:

  1. enno.cr öffnen.
  2. Datei -> Schliessen

Es scheint, dass der onMotion Event noch auf einem alten FXTreeItem ausgeführt wird, weil der "Schliessen" Menüpunkt die Regionsliste überlappt? Zu einem Zeitpunkt, wo die Regionsliste noch nicht neu erzeugt wurde?

Enno

Enno

2023-02-19 12:04

Administrator   ~0009927

Gefixt in version 1.5.21

Eintrags-Historie

Änderungsdatum Benutzername Feld Änderung
2023-02-18 22:22 Enno Neuer Eintrag
2023-02-18 22:22 Enno Status neu => zugewiesen
2023-02-18 22:22 Enno Bearbeitung durch => Enno
2023-02-18 22:23 Enno Notiz hinzugefügt: 0009923
2023-02-18 22:27 Enno Notiz hinzugefügt: 0009924
2023-02-18 22:32 Enno Notiz hinzugefügt: 0009925
2023-02-18 22:35 Enno Notiz bearbeitet: 0009925
2023-02-18 22:36 Enno Notiz bearbeitet: 0009925
2023-02-18 22:41 Enno Notiz hinzugefügt: 0009926
2023-02-18 22:41 Enno Notiz bearbeitet: 0009926
2023-02-19 12:04 Enno Status zugewiesen => erledigt
2023-02-19 12:04 Enno Lösung offen => erledigt
2023-02-19 12:04 Enno Behoben in Version => 1.5
2023-02-19 12:04 Enno Notiz hinzugefügt: 0009927
2023-02-19 12:04 Enno Zielversion 1.5 => 1.6