Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ili2c gui locks file #92

Open
beistehen opened this issue Jun 21, 2023 · 0 comments
Open

ili2c gui locks file #92

beistehen opened this issue Jun 21, 2023 · 0 comments

Comments

@beistehen
Copy link
Contributor

Info: ili2c-5.3.2-6fb5df2877070aeb16c7b39a206a61e2518682c8
Windows 11

Wird eine Modelldatei mittels ili2c (im GUI-Modus) geprüft, und enthält diese Datei einen Fehler in Form eines unerlaubten Zeichens ("failed to scan file (unexpected char: 0x..); file ignored"), so wird die Modelldatei durch den Java-Prozess (javaw.exe) gesperrt und kann nicht gelöscht, umbenannt oder verschoben werden, bis das Fenster von ili2c geschlossen wird.

Diese Verhalten tritt bei anderen Fehlern und bei fehlerfreien Modelldateien nicht auf. Ein solches Verhalten hätte ich auch in diesem Fall erwartet, handelt es sich ja um simple Textdateien, die nach dem Abschluss der Prüfung nicht offen gehalten werden müssen.

Schritte zur Reproduktion:

  1. ili2c mittels Doppelklick auf .jar-Datei starten -> GUI öffnet sich.
  2. Via Schaltfläche Add Model (.ili)... das zuvor lokal gespeicherte Testmodell hinzufügen:
    test.ili
  3. Schaltfläche Run compiler anwählen.
  4. Im Fenster Compiler messages wird die Fehlermeldung "failed to scan file..." ausgegeben.
  5. Erneut Schaltfläche Run compiler anwählen.
  6. Im Fenster Compiler messages wird erneut dieselbe Fehlermeldung ausgeben.
  7. Versuche, die Datei test.ili im Windows Explorer zu löschen, umzubenennen oder zu verschieben scheitern mit der Windows-Fehlermeldung, dass die Modelldatei in einer anderen Applikation geöffnet ist.
  8. Schliessen des Fensters von ili2c.
  9. Modelldatei test.ili kann nun gelöscht, umbenannt oder verschoben werden.

Vermutung: Der File-Stream wird in bestimmten Fällen (2. Compiler-Durchlauf) nicht sauber geschlossen (wegen der exception?) und verhindert dadurch eine Freigabe der Datei.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant