diff -Nur mc-4.8.6.old/po/ru.po mc-4.8.6/po/ru.po
old
|
new
|
|
576 | 576 | msgid "Disables subshell support" |
577 | 577 | msgstr "Отключить поддержку встроенной командной оболочки" |
578 | 578 | |
| 579 | msgid "Force subshell execution" |
| 580 | msgstr "Принудительное выполнение во встроенной командной оболочке" |
| 581 | |
579 | 582 | msgid "Log ftp dialog to specified file" |
580 | 583 | msgstr "Записывать диалог с FTP в заданный файл" |
581 | 584 | |
diff -Nur mc-4.8.6.old/src/args.c mc-4.8.6/src/args.c
old
|
new
|
|
43 | 43 | #include "src/args.h" |
44 | 44 | |
45 | 45 | /*** external variables **************************************************************************/ |
| 46 | extern int force_subshell_execution; |
46 | 47 | |
47 | 48 | /*** global variables ****************************************************************************/ |
48 | 49 | |
… |
… |
|
152 | 153 | N_("Disables subshell support"), |
153 | 154 | NULL |
154 | 155 | }, |
| 156 | |
| 157 | { |
| 158 | "forceexec", 'r', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE, |
| 159 | &force_subshell_execution, |
| 160 | N_("Force subshell execution"), |
| 161 | NULL |
| 162 | }, |
155 | 163 | #endif |
156 | 164 | |
157 | 165 | /* debug options */ |
diff -Nur mc-4.8.6.old/src/execute.c mc-4.8.6/src/execute.c
old
|
new
|
|
63 | 63 | /*** file scope functions ************************************************************************/ |
64 | 64 | /* --------------------------------------------------------------------------------------------- */ |
65 | 65 | |
| 66 | int force_subshell_execution = 0; |
| 67 | |
66 | 68 | static void |
67 | 69 | edition_post_exec (void) |
68 | 70 | { |
… |
… |
|
290 | 292 | |
291 | 293 | #ifdef ENABLE_SUBSHELL |
292 | 294 | if (mc_global.tty.use_subshell) |
293 | | if (subshell_state == INACTIVE) |
| 295 | if (subshell_state == INACTIVE || force_subshell_execution) |
294 | 296 | do_execute (shell, cmd ? cmd : command, flags | EXECUTE_AS_SHELL); |
295 | 297 | else |
296 | 298 | message (D_ERROR, MSG_ERROR, _("The shell is already running a command")); |
diff -Nur mc-4.8.6.old/src/execute.h mc-4.8.6/src/execute.h
old
|
new
|
|
28 | 28 | |
29 | 29 | /*** declarations of public functions ************************************************************/ |
30 | 30 | |
| 31 | /* If true message "The shell is already running a command" never */ |
| 32 | extern int force_subshell_execution; |
| 33 | |
31 | 34 | /* Execute functions that use the shell to execute */ |
32 | 35 | void shell_execute (const char *command, int flags); |
33 | 36 | |