Unix转Dos路径,修复部分应用不支持Linux路径(跟进 deepin-wine-helper)

This commit is contained in:
2022-10-13 22:52:30 +08:00
parent c7f510202d
commit 75df70235a

View File

@@ -428,11 +428,21 @@ CallIE8()
#####专属优化段结束 #####专属优化段结束
UnixUriToDosPath()
{
OPEN_FILE="$1"
if [ -f "$OPEN_FILE" ]; then
OPEN_FILE=$(realpath "$OPEN_FILE")
OPEN_FILE="z:$OPEN_FILE"
OPEN_FILE=$(echo $OPEN_FILE | sed -e 's/\//\\\\/g')
fi
echo $OPEN_FILE
}
#arg 1: exec file path #arg 1: exec file path
#arg 2: autostart ,or exec arg 1 #arg 2: autostart ,or exec arg 1
#arg 3: exec arg 2 #arg 3: exec arg 2
#### CallApp段根据容器名找专属优化没有就走通用启动 #### CallApp段根据容器名找专属优化没有就走通用启动
CallApp() CallApp()
{ {
@@ -601,10 +611,14 @@ ParseArgs()
{ {
if [ $# -eq 4 ];then if [ $# -eq 4 ];then
RunApp "$3" RunApp "$3"
elif [ $# -eq 5 ];then elif [ -f "$5" ];then
RunApp "$3" "$5" if [ -n "$MIME_EXEC" ];then
RunApp "$MIME_EXEC" "$(UnixUriToDosPath "$5")" "${@:6}"
else
RunApp "$3" "$(UnixUriToDosPath "$5")" "${@:6}"
fi
else else
RunApp "$3" "$5" "$6" RunApp "$3" "${@:5}"
fi fi
} }