From f7d189fa53ab922ddefa4dbec26058dd83d45ec0 Mon Sep 17 00:00:00 2001
From: Mikhail Tergoev <fidel@altlinux.org>
Date: Tue, 17 Jun 2025 19:40:27 +0300
Subject: [PATCH] one shift for args in main case

---
 winehelper | 39 +++++++++++++++++++++++----------------
 1 file changed, 23 insertions(+), 16 deletions(-)

diff --git a/winehelper b/winehelper
index 3716cd4..46bdc20 100755
--- a/winehelper
+++ b/winehelper
@@ -1467,7 +1467,7 @@ wh_info () {
     echo "Использование: $SCRIPT_NAME [команда]
 
 Команды:
-    install list                   список возможных установочных скриптов
+    install list                    список возможных установочных скриптов
     install [скрипт]                запустить скрипт установки программы
     install [скрипт] --clear-pfx    не использовать готовый префикс для установки ПО
 
@@ -1497,7 +1497,14 @@ if [[ -d "$HOME/.local/share/$SCRIPT_NAME" ]] \
 then try_force_link_dir "$HOME/.local/share/$SCRIPT_NAME" "$HOME/.winehelper"
 fi
 
-case "${1,,}" in
+if [[ -n "$1" ]] ; then
+    arg1="$1"
+    shift
+else
+    arg1="--help"
+fi
+
+case "$arg1" in
     --version) rpm -qi "$SCRIPT_NAME" ; exit 0 ;;
     --help) wh_info ; exit 0 ;;
     killall) kill_wine ;;
@@ -1505,20 +1512,19 @@ case "${1,,}" in
     winereg|regedit) prepair_wine ; wine_run "regedit" ;;
     winefile|explorer) prepair_wine ; wine_run "winefile" ;;
     wineconsole|cmd) prepair_wine ; wine_run "wineconsole" ;;
-    winetricks) shift ; prepair_wine ; "$WINETRICKS" -q "$@" ;;
-    desktop) shift ; create_desktop "$@" ; exit 0 ;;
-    install|-i) shift ; run_autoinstall "$@" ;;
-    installed) shift ; check_installed_programs "$1" ;;
-    run|-r) shift ; run_installed_programs "$1" ;;
-    backup-prefix) shift ; backup_prefix "$@" ;;
-    restore-prefix) shift ; restore_prefix "$@" ;;
-    remove-all) shift ; remove_winehelper "$@" ;;
-    remove-prefix) shift ; remove_prefix "$@" ;;
+    winetricks) prepair_wine ; "$WINETRICKS" -q "$@" ;;
+    desktop) create_desktop "$@" ; exit 0 ;;
+    install|-i) run_autoinstall "$@" ;;
+    installed) check_installed_programs "$1" ;;
+    run|-r) run_installed_programs "$1" ;;
+    backup-prefix) backup_prefix "$@" ;;
+    restore-prefix) restore_prefix "$@" ;;
+    remove-all) remove_winehelper "$@" ;;
+    remove-prefix) remove_prefix "$@" ;;
     *)
-        if [[ -f "$1" ]] ; then
-            WIN_FILE_EXEC="$(readlink -f "$1")"
-            WIN_FILE_NAME="$(basename "$WIN_FILE_EXEC")"
-            shift
+        if [[ -f "$arg1" ]] ; then
+            WIN_FILE_EXEC="$(readlink -f "$arg1")"
+            WIN_FILE_NAME="$(basename "$arg1")"
             case "${WIN_FILE_NAME,,}" in
                 *.exe) prepair_wine ; wine_run $WINE_WIN_START "$WIN_FILE_EXEC" "$@" ;;
                 *.msi) prepair_wine ; wine_run msiexec /i "$WIN_FILE_EXEC" "$@" ;;
@@ -1526,8 +1532,9 @@ case "${1,,}" in
                 *) fatal "Тип файла не поддерживается." ;;
             esac
         else
+            print_error "Команды $arg1 не существует."
             wh_info
             exit 1
         fi
-        ;;
+    ;;
 esac