Fix segfault on switch to subshell in mcedit/mcview/mcdiffview.
[midnight-commander.git] / src / execute.h
bloba326806df222560c8a694525d1bb9d40014dd9b9
1 /** \file execute.h
2 * \brief Header: execution routines
3 */
5 #ifndef MC__EXECUTE_H
6 #define MC__EXECUTE_H
8 #include "lib/utilunix.h"
9 #include "lib/vfs/vfs.h"
11 /*** typedefs(not structures) and defined constants **********************************************/
13 /*** enums ***************************************************************************************/
15 /* If true, after executing a command, wait for a keystroke */
16 enum
18 pause_never,
19 pause_on_dumb_terminals,
20 pause_always
23 /*** structures declarations (and typedefs of structures)*****************************************/
25 /*** global variables defined in .c file *********************************************************/
27 extern int pause_after_run;
29 /*** declarations of public functions ************************************************************/
31 /* Execute functions that use the shell to execute */
32 void shell_execute (const char *command, int flags);
34 /* Handle toggling panels by Ctrl-O */
35 void toggle_subshell (void);
37 /* Handle toggling panels by Ctrl-Z */
38 gboolean execute_suspend (const gchar * event_group_name, const gchar * event_name,
39 gpointer init_data, gpointer data);
41 /* Execute command on a filename that can be on VFS */
42 void execute_with_vfs_arg (const char *command, const vfs_path_t * filename_vpath);
43 void execute_external_editor_or_viewer (const char *command, const vfs_path_t * filename_vpath,
44 long start_line);
46 void post_exec (void);
47 void pre_exec (void);
49 /*** inline functions ****************************************************************************/
51 #endif /* MC__EXECUTE_H */