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

GUI can't render script #621

Closed
escape0707 opened this issue Mar 16, 2023 · 2 comments
Closed

GUI can't render script #621

escape0707 opened this issue Mar 16, 2023 · 2 comments

Comments

@escape0707
Copy link

I'm using Arch, BTRFS, and latest stable rmlint-shredder.

With default config, I use the GUI to scan my Pictures directory, and while it gives some dupe files, after hitting render script from all, the GUI just get stuck. The icon in the left panel is only circling, and I can't take any further steps.

I don't see any suspicious log when launching from command line with the --gui option. The program stuck after running the generated rmlint command. CLI works fine, but I need the GUI tool to verify and select the exact directory I don't need.

cebtenzzre added a commit that referenced this issue Apr 16, 2023
We cannot assume that a fatal signal was raised at a convenient time,
especially a segfault.

Calling rm_log_error_line here has several problems:
- Attempting to lock RM_LOG_MTX may deadlock,
- g_log aborts if it is called during another g_log call,
- and if our non-trivial logging_callback crashes we recurse.

Use g_printerr instead, which is simpler and less likely to cause a
recursive fault that could obscure the original fatal signal or prevent
a coredump from being generated.

Related to #621
@cebtenzzre
Copy link
Contributor

cebtenzzre commented Apr 16, 2023

I was able to reproduce this myself, and as far as I can tell it was caused by a performance optimization in glib 2.75.3 that caused a problematic cast in the logging callback to actually result in a segfault instead of just a compiler warning. This affected command-line rmlint as well but only if you were using --no-with-color or sending its output to a pipe. Try building from latest master.

@escape0707
Copy link
Author

I've tested, and can confirm this fixed in master branch. Thank you for maintaining this great software!

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

No branches or pull requests

2 participants