Bugs and Issues - LSS

Argordejo Caught crash in execpthook

append delete brummer

When trying to start agordejo (without install) it fail with the following message:

QTextBrowser: No document for index.html
[agordejo] ERROR 2022-07-18 18:17:51,641 engine.start: Caught crash in execpthook. Trying too execute atexit anyway
Traceback (most recent call last):
File "/home/brummer/projecte/Argodejo/build/agordejo", line 7, in <module>
mainwindow.MainWindow()
File "/home/brummer/projecte/Argodejo/build/qtgui/mainwindow.py", line 144, in __init__
self.changelog = Changelog(mainWindow=self)
File "/home/brummer/projecte/Argodejo/build/qtgui/changelog.py", line 55, in __init__
with open(PATHS["doc"] + "/CHANGELOG", "r") as f:
FileNotFoundError: [Errno 2]

this could be easily avoided by handle exceptions.

in changelog.py implement a try: hook for open the CHANGELOG.

try:
with open(PATHS["doc"] + "/CHANGELOG", "r") as f:
textEdit.setPlainText(f.read())
except IOError:
print("CHANGELOG not accessible")

Reply RSS

Replies

append delete #1. lss

You have tried only a partial installation (configure and make) and executed a temp build file to start.

You can either do a proper install or start locally. As the readme says:

You can also run Agordejo after extracting the release archive or cloning from git, without make or installation. If you did so, for additional features please link tools/nsm-data to your executable PATH.

append delete #2. brummer

Don't know what to say here. Loading a file from the users local space, without doing any error checking and crashing over that, is, sorry me, stupid. Regardless if you assume that this file "should be there at any case because it is part of your package", or, if you open a new file for write to, it is, stupid to assume it is open. Check that before proceed. There could happen so many things in time between, noon remember that.

More over, as this file isn't in any case necessary to run the program.
A IOError checking should be done on any file load in python. Then, when needed, do a clean exit (clean up before you go), or, inform the user that the operation fail.
That is in no way a hack, that is what I call good practice.
You assumptions about how I have to start the program in all honor, nice would be if I could use a app without reading the fucking manual, and, here in that case it just didn't help anyway.

It pains me to see this app sold as "The Linux Audio Session Manager" while I see so careless handling of file IO.

Reply

(Leave this as-is, it’s a trap!)

There is no need to “register”, just enter the same name + password of your choice every time.

Pro tip: Use markup to add links, quotes and more.