From 376ed15079a32d3aecb16f50e47ecefaefd17f8b Mon Sep 17 00:00:00 2001 From: abcdefg30 Date: Thu, 2 Jul 2020 23:56:28 +0200 Subject: [PATCH] Correct the support folder location in the crash dialog --- launch-game.cmd | 7 ++++++- launch-game.sh | 12 +++++++++++- packaging/linux/openra.appimage.in | 8 +++++++- packaging/linux/openra.in | 8 +++++++- 4 files changed, 31 insertions(+), 4 deletions(-) diff --git a/launch-game.cmd b/launch-game.cmd index 118350c95f6d..a96c58fe1574 100644 --- a/launch-game.cmd +++ b/launch-game.cmd @@ -25,10 +25,15 @@ OpenRA.Game.exe %* :end if %errorlevel% neq 0 goto crashdialog exit /b + :crashdialog +set logs=%AppData%\OpenRA\Logs +if exist %USERPROFILE%\Documents\OpenRA\Logs (set logs=%USERPROFILE%\Documents\OpenRA\Logs) +if exist Support\Logs (set logs=%cd%\Support\Logs) + echo ---------------------------------------- echo OpenRA has encountered a fatal error. -echo * Log Files are available in Documents\OpenRA\Logs +echo * Log Files are available in %logs% echo * FAQ is available at https://github.com/OpenRA/OpenRA/wiki/FAQ echo ---------------------------------------- pause diff --git a/launch-game.sh b/launch-game.sh index 253045f7b5c1..d640cab1ab8d 100755 --- a/launch-game.sh +++ b/launch-game.sh @@ -25,7 +25,17 @@ mono OpenRA.Game.exe Engine.LaunchPath="$MODLAUNCHER" $MODARG "$@" # Show a crash dialog if something went wrong if [ $? != 0 ] && [ $? != 1 ]; then - ERROR_MESSAGE="OpenRA has encountered a fatal error.\nPlease refer to the crash logs and FAQ for more information.\n\nLog files are located in ~/.openra/Logs\nThe FAQ is available at http://wiki.openra.net/FAQ" + if [ "$(uname -s)" = "Darwin" ]; then + LOGS="${HOME}/Library/Application Support/OpenRA/Logs/" + else + LOGS="${XDG_CONFIG_HOME:-${HOME}/.config}/openra/Logs" + if [ ! -d "${LOGS}" ] && [ -d "${HOME}/.openra/Logs" ]; then + LOGS="${HOME}/.openra/Logs" + fi + fi + + test -d Support/Logs && LOGS="${PWD}/Support/Logs" + ERROR_MESSAGE="OpenRA has encountered a fatal error.\nPlease refer to the crash logs and FAQ for more information.\n\nLog files are located in ${LOGS}\nThe FAQ is available at http://wiki.openra.net/FAQ" if command -v zenity > /dev/null; then zenity --no-wrap --error --title "{MODNAME}" --text "${ERROR_MESSAGE}" 2> /dev/null elif command -v kdialog > /dev/null; then diff --git a/packaging/linux/openra.appimage.in b/packaging/linux/openra.appimage.in index 67d20e4fa65f..318e2870d166 100755 --- a/packaging/linux/openra.appimage.in +++ b/packaging/linux/openra.appimage.in @@ -39,7 +39,13 @@ mono --debug OpenRA.Game.exe Game.Mod={MODID} Engine.LaunchPath="${LAUNCHER}" En # Show a crash dialog if something went wrong if [ $? != 0 ] && [ $? != 1 ]; then - ERROR_MESSAGE="{MODNAME} has encountered a fatal error.\nPlease refer to the crash logs and FAQ for more information.\n\nLog files are located in ~/.openra/Logs\nThe FAQ is available at http://wiki.openra.net/FAQ" + LOGS="${XDG_CONFIG_HOME:-${HOME}/.config}/openra/Logs" + if [ ! -d "${LOGS}" ] && [ -d "${HOME}/.openra/Logs" ]; then + LOGS="${HOME}/.openra/Logs" + fi + + test -d Support/Logs && LOGS="${PWD}/Support/Logs" + ERROR_MESSAGE="{MODNAME} has encountered a fatal error.\nPlease refer to the crash logs and FAQ for more information.\n\nLog files are located in ${LOGS}\nThe FAQ is available at http://wiki.openra.net/FAQ" if command -v zenity > /dev/null; then zenity --no-wrap --error --title "{MODNAME}" --text "${ERROR_MESSAGE}" 2> /dev/null elif command -v kdialog > /dev/null; then diff --git a/packaging/linux/openra.in b/packaging/linux/openra.in index 7292ddba0f10..e426e6346c77 100755 --- a/packaging/linux/openra.in +++ b/packaging/linux/openra.in @@ -13,7 +13,13 @@ mono {DEBUG} OpenRA.Game.exe Game.Mod={MODID} Engine.LaunchPath="{BIN_DIR}/openr # Show a crash dialog if something went wrong if [ $? != 0 ] && [ $? != 1 ]; then - ERROR_MESSAGE="{MODNAME} has encountered a fatal error.\nPlease refer to the crash logs and FAQ for more information.\n\nLog files are located in ~/.openra/Logs\nThe FAQ is available at http://wiki.openra.net/FAQ" + LOGS="${XDG_CONFIG_HOME:-${HOME}/.config}/openra/Logs" + if [ ! -d "${LOGS}" ] && [ -d "${HOME}/.openra/Logs" ]; then + LOGS="${HOME}/.openra/Logs" + fi + + test -d Support/Logs && LOGS="${PWD}/Support/Logs" + ERROR_MESSAGE="{MODNAME} has encountered a fatal error.\nPlease refer to the crash logs and FAQ for more information.\n\nLog files are located in ${LOGS}\nThe FAQ is available at http://wiki.openra.net/FAQ" if command -v zenity > /dev/null; then zenity --no-wrap --error --title "{MODNAME}" --text "${ERROR_MESSAGE}" 2> /dev/null elif command -v kdialog > /dev/null; then