Fix LAUNCH_PARAMETERS with backslashes (VKP or mods)
This commit is contained in:
parent
57fcfa605e
commit
ead33bc910
@ -2913,12 +2913,13 @@ edit_db_from_gui () {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Escaping backslashes and quotes for Windows paths
|
# HACK: Escaping backslashes and quotes for Windows paths
|
||||||
proxy_mod_db=$(echo "$proxy_mod_db" | sed 's/\\/\\\\\\\\/g; s/"/\\"/g')
|
proxy_mod_db=$(echo "$proxy_mod_db" | sed 's/\\/\\\\\\\\/g; s/"/\\"/g')
|
||||||
|
proxy_mod_db_escaped=$(printf '%s\n' "$proxy_mod_db" | sed 's/[\/&]/\\&/g')
|
||||||
|
|
||||||
if [[ $(<"${PORTWINE_DB_FILE}") =~ export\ ${mod_db}= ]]
|
if [[ $(<"${PORTWINE_DB_FILE}") =~ export\ ${mod_db}= ]]
|
||||||
then sed -i "s|export ${mod_db}=.*|export ${mod_db}=\"$proxy_mod_db\"|g" "${PORTWINE_DB_FILE}"
|
then sed -i "s|export ${mod_db}=.*|export ${mod_db}=\"${proxy_mod_db_escaped}\"|g" "${PORTWINE_DB_FILE}"
|
||||||
else echo "export ${mod_db}=\"$proxy_mod_db\"" >> "${PORTWINE_DB_FILE}"
|
else echo "export ${mod_db}=\"${proxy_mod_db}\"" >> "${PORTWINE_DB_FILE}"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
@ -3541,6 +3542,8 @@ start_portwine () {
|
|||||||
export PW_GAMEMODERUN_SLR=""
|
export PW_GAMEMODERUN_SLR=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# TODO: Add org.freedesktop.ScreenSaver.SimulateUserActivity for Flatpak support
|
||||||
|
# org.freedesktop.ScreenSaver.Inhibit doesn`t work because the Inhibit method is released as soon as the D-Bus connection is released
|
||||||
if command -v systemd-inhibit &>/dev/null \
|
if command -v systemd-inhibit &>/dev/null \
|
||||||
&& [[ "$GAMEMODERUN" != "1" ]]
|
&& [[ "$GAMEMODERUN" != "1" ]]
|
||||||
then
|
then
|
||||||
@ -4327,6 +4330,7 @@ pw_run () {
|
|||||||
print_var "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VULKAN_DRIVER_NAME"
|
print_var "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VULKAN_DRIVER_NAME"
|
||||||
print_var "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2"
|
print_var "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2"
|
||||||
print_var "WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH" "PW_VK_ICD_FILENAMES"
|
print_var "WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH" "PW_VK_ICD_FILENAMES"
|
||||||
|
proxy_launch_parameters=${LAUNCH_PARAMETERS//\\\\/\\}
|
||||||
if [[ "$PW_USE_RUNTIME" == 1 ]] \
|
if [[ "$PW_USE_RUNTIME" == 1 ]] \
|
||||||
&& [[ "$PW_WINE_USE" != "USE_SYSTEM_WINE" ]]
|
&& [[ "$PW_WINE_USE" != "USE_SYSTEM_WINE" ]]
|
||||||
then
|
then
|
||||||
@ -4349,7 +4353,7 @@ pw_run () {
|
|||||||
${PW_GAMEMODERUN_SLR} \
|
${PW_GAMEMODERUN_SLR} \
|
||||||
${PW_MANGOHUD_SLR} \
|
${PW_MANGOHUD_SLR} \
|
||||||
${PW_DISPLAY} \
|
${PW_DISPLAY} \
|
||||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS} &>>"${PW_LOG_TO_FILE}"
|
"${WINELOADER}" "$@" ${proxy_launch_parameters} &>>"${PW_LOG_TO_FILE}"
|
||||||
else
|
else
|
||||||
if [[ "$PW_USE_TERMINAL" == 1 ]] ; then
|
if [[ "$PW_USE_TERMINAL" == 1 ]] ; then
|
||||||
PW_ADD_TO_ARGS_IN_RUNTIME="--xterm"
|
PW_ADD_TO_ARGS_IN_RUNTIME="--xterm"
|
||||||
@ -4368,7 +4372,7 @@ pw_run () {
|
|||||||
${PW_GAMEMODERUN_SLR} \
|
${PW_GAMEMODERUN_SLR} \
|
||||||
${PW_MANGOHUD_SLR} \
|
${PW_MANGOHUD_SLR} \
|
||||||
${PW_DISPLAY} \
|
${PW_DISPLAY} \
|
||||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS} &>>"${PW_LOG_TO_FILE}"
|
"${WINELOADER}" "$@" ${proxy_launch_parameters} &>>"${PW_LOG_TO_FILE}"
|
||||||
print_info "Update prefix log:"
|
print_info "Update prefix log:"
|
||||||
[[ -f "${PW_TMPFS_PATH}/update_pfx_log" ]] && cat "${PW_TMPFS_PATH}/update_pfx_log"
|
[[ -f "${PW_TMPFS_PATH}/update_pfx_log" ]] && cat "${PW_TMPFS_PATH}/update_pfx_log"
|
||||||
echo
|
echo
|
||||||
@ -4396,7 +4400,7 @@ pw_run () {
|
|||||||
${PW_MANGOHUD_SLR} \
|
${PW_MANGOHUD_SLR} \
|
||||||
${PW_DISPLAY} \
|
${PW_DISPLAY} \
|
||||||
${PW_INHIBIT_SLR}\
|
${PW_INHIBIT_SLR}\
|
||||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS} &>>"${PW_LOG_TO_FILE}"
|
"${WINELOADER}" "$@" ${proxy_launch_parameters} &>>"${PW_LOG_TO_FILE}"
|
||||||
wait_wineserver
|
wait_wineserver
|
||||||
else
|
else
|
||||||
print_info "Update prefix log:"
|
print_info "Update prefix log:"
|
||||||
@ -4415,7 +4419,7 @@ pw_run () {
|
|||||||
${PW_MANGOHUD_SLR} \
|
${PW_MANGOHUD_SLR} \
|
||||||
${PW_DISPLAY} \
|
${PW_DISPLAY} \
|
||||||
${PW_INHIBIT_SLR}\
|
${PW_INHIBIT_SLR}\
|
||||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS}
|
"${WINELOADER}" "$@" ${proxy_launch_parameters}
|
||||||
wait_wineserver
|
wait_wineserver
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
Loading…
Reference in New Issue
Block a user