Fix segfault on switch to subshell in mcedit/mcview/mcdiffview.
[midnight-commander.git] / src / args.h
blob616864d00654847edc58f73e25a979b1ddd5ca2a
1 #ifndef MC__ARGS_H
2 #define MC__ARGS_H
4 #include "lib/global.h" /* gboolean */
5 #include "lib/vfs/vfs.h" /* vfs_path_t */
7 /*** typedefs(not structures) and defined constants **********************************************/
9 /*** enums ***************************************************************************************/
11 /*** structures declarations (and typedefs of structures)*****************************************/
13 typedef struct
15 vfs_path_t *file_vpath;
16 long line_number;
17 } mcedit_arg_t;
19 /*** global variables defined in .c file *********************************************************/
21 extern gboolean mc_args__force_xterm;
22 extern gboolean mc_args__nomouse;
23 extern gboolean mc_args__force_colors;
24 extern gboolean mc_args__nokeymap;
25 extern char *mc_args__last_wd_file;
26 extern char *mc_args__netfs_logfile;
27 extern char *mc_args__keymap_file;
28 #ifdef ENABLE_VFS_SMB
29 extern int mc_args__debug_level;
30 #endif
33 * MC_RUN_FULL: dir for left panel
34 * MC_RUN_EDITOR: list of files to edit
35 * MC_RUN_VIEWER: file to view
36 * MC_RUN_DIFFVIEWER: first file to compare
38 extern void *mc_run_param0;
40 * MC_RUN_FULL: dir for right panel
41 * MC_RUN_EDITOR: unused
42 * MC_RUN_VIEWER: unused
43 * MC_RUN_DIFFVIEWER: second file to compare
45 extern char *mc_run_param1;
47 /*** declarations of public functions ************************************************************/
49 void mc_setup_run_mode (char **argv);
50 gboolean mc_args_parse (int *argc, char ***argv, const char *translation_domain, GError ** mcerror);
51 gboolean mc_args_show_info (void);
52 gboolean mc_setup_by_args (int argc, char **argv, GError ** mcerror);
54 void mcedit_arg_free (mcedit_arg_t * arg);
56 /*** inline functions ****************************************************************************/
58 #endif /* MC__ARGS_H */