diff --git a/src/args.c b/src/args.c
index a66777e2e..a1ace3f7a 100644
a
|
b
|
mcedit_arg_vpath_new (vfs_path_t * file_vpath, long line_number) |
500 | 500 | * @return mcedit_arg_t object |
501 | 501 | */ |
502 | 502 | |
503 | | static mcedit_arg_t * |
| 503 | mcedit_arg_t * |
504 | 504 | mcedit_arg_new (const char *file_name, long line_number) |
505 | 505 | { |
506 | 506 | return mcedit_arg_vpath_new (vfs_path_from_str (file_name), line_number); |
diff --git a/src/args.h b/src/args.h
index 19099ddf3..d8beb0999 100644
a
|
b
|
gboolean mc_args_show_info (void); |
49 | 49 | gboolean mc_setup_by_args (int argc, char **argv, GError ** mcerror); |
50 | 50 | |
51 | 51 | void mcedit_arg_free (mcedit_arg_t * arg); |
52 | | |
| 52 | mcedit_arg_t * mcedit_arg_new (const char *file_name, long line_number); |
53 | 53 | /*** inline functions ****************************************************************************/ |
54 | 54 | |
55 | 55 | #endif /* MC__ARGS_H */ |
diff --git a/src/filemanager/cmd.c b/src/filemanager/cmd.c
index 76f21acdb..5cbc84c8c 100644
a
|
b
|
|
69 | 69 | #include "src/history.h" |
70 | 70 | #include "src/usermenu.h" /* MC_GLOBAL_MENU */ |
71 | 71 | #include "src/util.h" /* check_for_default() */ |
| 72 | #include "src/args.h" /* mcedit_arg_t */ |
72 | 73 | |
73 | 74 | #include "src/viewer/mcviewer.h" |
74 | 75 | |
… |
… |
void |
699 | 700 | edit_cmd (const WPanel * panel) |
700 | 701 | { |
701 | 702 | vfs_path_t *fname; |
| 703 | if (panel->marked != 0) |
| 704 | { |
| 705 | int i; |
| 706 | GList *files = NULL; |
| 707 | for (i = 0; i < panel->dir.len; i++) |
| 708 | if (panel->dir.list[i].f.marked != 0) |
| 709 | files = g_list_prepend (files, mcedit_arg_new(panel->dir.list[i].fname->str, 0)); |
702 | 710 | |
703 | | fname = vfs_path_from_str (panel_current_entry (panel)->fname->str); |
704 | | if (regex_command (fname, "Edit") == 0) |
705 | | do_edit (fname); |
706 | | vfs_path_free (fname, TRUE); |
| 711 | edit_files (files); |
| 712 | g_list_free_full (files, mcedit_arg_free); |
| 713 | } |
| 714 | else |
| 715 | { |
| 716 | fname = vfs_path_from_str (panel_current_entry (panel)->fname->str); |
| 717 | if (regex_command (fname, "Edit") == 0) |
| 718 | do_edit (fname); |
| 719 | vfs_path_free (fname, TRUE); |
| 720 | } |
707 | 721 | } |
708 | 722 | |
709 | 723 | /* --------------------------------------------------------------------------------------------- */ |