-
Notifications
You must be signed in to change notification settings - Fork 91
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
tev does not exit when the window is closed #216
Comments
Hi, thanks for reporting this. Unfortunately I can’t reproduce it — I routinely use tev on Ubuntu and Arch via the shell (with tiling and regular window managers) and so far have not come across this. I suspect the window-close message from your WM might not make it through GLFW to tev. If you have extra information, I’d much appreciate it. Like: what WM do you use, do you use x11 or Wayland, does the problem also happen when building from source, what’s your specific OS version, etc. Also, if someone else watching this repo has run into this in the past, feel free to chime in. |
Hi, I've just encountered this as well. Using tev EDIT: switching to X11 doesn't solve the issue |
I built the Debug configuration and ran tev with gdb. This is the log: If I interpret this correctly, you have this // Spawn a background thread that opens images passed via stdin.
// To allow whitespace characters in filenames, we use the convention that
// paths in stdin must be separated by newlines.
thread stdinThread{[&]() {
string channelSelector;
while (!shuttingDown()) {
for (string line; getline(cin, line);) {
string imageFile = tev::ensureUtf8(line);
if (imageFile.empty()) {
continue;
} and if the application is exiting, the |
Hi, that's a great catch! Right below the code you just linked, the thread is detached, which should not allow it to stall the application // It is unfortunately not easily possible to poll/timeout on cin in a portable manner,
// so instead we resort to simply detaching this thread, causing it to be forcefully
// terminated as the main thread terminates.
stdinThread.detach(); ... but your GDB log indeed seems to say otherwise. Could you try removing the |
I have just been looking for an OpenEXR viewer, tried out tev on NixOS and started it from the shell with a Multilayer EXR image as argument, but when I close the window, the program just stays running until I kill it:
The text was updated successfully, but these errors were encountered: