[raiguard][1.1.107][Linux] Crash reporter does not open the folder with log file
Posted: Fri Apr 19, 2024 9:00 pm
When you click "Yes" in the Crash message window to open the folder containing the current log file, nothing happens.
Expected: Folder is opened in file browser.
OS: Manjaro, KDE Plasma 5.27.11, X11
Factorio 1.1.106 and 1.1.107
Steps:
1. Start Factorio on a map
2. Send SIGSEGV using htop (or "killall -11 factorio")
3. Click YES in window
This looked correct so I decided to look at what Factorio launches with:
This looks correct and when run in Shell opens the folder. Now this seems weird, why doesn't it work when Factorio runs it? The only possible explanation is that Factorio would be running the path as one argument
Well OK, ok, heavier artillery?
Steam startup parameters, follow-forks is needed because the error window is a forked process:
Looks fine here so I don't know why it doesn't open the folder in Dolphin? ... Further testing has allowed me to replicate this in Shell with "xdg-open /home/vadim/fullpath" but not "xdg-open fullpath" while inside the home directory. Sometimes. Then it had gone away. A heisenbug?
Still, when Factorio tries to call xdg-open it always fails to open in Dolphin. While I had partial success to replicate it outside Factorio (this may hint at a system configuration or Dolphin/KDE problem), Factorio is the only thing that has 100% success rate at failing
PS: This appears to affect the "Show Desync Report" button too.
Since this is a very high priority issue, I hope this can be fixed until next April 1st, 2025. Here's a fancy countdown to keep you aware of the deadline: https://www.timeanddate.com/countdown/g ... 00&p0=4365 And if you are still using Windows XP, you can set this web page as your desktop background to be reminded of it.
Thank you
Expected: Folder is opened in file browser.
OS: Manjaro, KDE Plasma 5.27.11, X11
Factorio 1.1.106 and 1.1.107
Steps:
1. Start Factorio on a map
2. Send SIGSEGV using htop (or "killall -11 factorio")
3. Click YES in window
Code: Select all
0.000 2024-04-19 12:22:08; Factorio 1.1.107 (build 62234, linux64, steam)
35.527 Error CrashHandler.cpp:639: Received SIGSEGV
...
Please also include the save file(s), any mods you may be using, and any steps you know of to reproduce the crash.
50.423 Info SystemUtil.cpp:878: Started /usr/bin/xdg-open; trampoline PID: 115567
50.423 Uploading log file
50.474 Info SystemUtil.cpp:878: Started /home/vadim/.local/share/Steam/steamapps/common/Factorio/bin/x64/factorio; trampoline PID: 115569
Code: Select all
while true; do pid="$(pgrep xdg-open)"; if [ ! -z "$pid" ]; then ps -o pid,args -p "$pid"; break; fi; done;
Code: Select all
PID COMMAND
118327 /bin/sh /usr/bin/xdg-open /home/vadim/.factorio
Code: Select all
# my assumption:
vadim$ /bin/sh "/usr/bin/xdg-open /home/vadim/.factorio"
/bin/sh: /usr/bin/xdg-open /home/vadim/.factorio: No such file or directory # exit code 127
Steam startup parameters, follow-forks is needed because the error window is a forked process:
Code: Select all
strace --follow-forks -t -o /home/vadim/strace-factorio.log %command%
Code: Select all
121659 18:48:35 execve("/usr/bin/xdg-open", ["xdg-open", "/home/vadim/.factorio"], 0x3c73a60 /* 98 vars */ <unfinished ...>
... if I read correctly it returns this:
121659 18:48:35 <... execve resumed>) = 0
... if I read the log correctly then the error window child process is this:
121659 18:48:35 +++ exited with 4 +++
Still, when Factorio tries to call xdg-open it always fails to open in Dolphin. While I had partial success to replicate it outside Factorio (this may hint at a system configuration or Dolphin/KDE problem), Factorio is the only thing that has 100% success rate at failing
PS: This appears to affect the "Show Desync Report" button too.
Since this is a very high priority issue, I hope this can be fixed until next April 1st, 2025. Here's a fancy countdown to keep you aware of the deadline: https://www.timeanddate.com/countdown/g ... 00&p0=4365 And if you are still using Windows XP, you can set this web page as your desktop background to be reminded of it.
Thank you