From 513d30e5a1104d4091001f059c3dfef0efd1247d Mon Sep 17 00:00:00 2001 From: Andrew Borodin Date: Sat, 1 Sep 2012 14:38:41 +0400 Subject: [PATCH] Allow create directory with name '~' (tilda). Use escaping for that (as in shell): \~. Signed-off-by: Andrew Borodin --- src/filemanager/cmd.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/filemanager/cmd.c b/src/filemanager/cmd.c index b8c8c773c..eba8950e3 100644 --- a/src/filemanager/cmd.c +++ b/src/filemanager/cmd.c @@ -895,16 +895,23 @@ mkdir_cmd (void) input_expand_dialog (_("Create a new Directory"), _("Enter directory name:"), MC_HISTORY_FM_MKDIR, name); - if (!dir) - return; - - if (*dir) + if (dir != NULL && dir != '\0') { vfs_path_t *absdir; + if (dir[0] == '/' || dir[0] == '~') absdir = vfs_path_from_str (dir); else - absdir = vfs_path_append_new (current_panel->cwd_vpath, dir, NULL); + { + /* possible escaped '~' */ + /* allow create directory with name '~' */ + char *tmpdir = dir; + + if (dir[0] == '\\' && dir[1] == '~') + tmpdir = dir + 1; + + absdir = vfs_path_append_new (current_panel->cwd_vpath, tmpdir, NULL); + } save_cwds_stat (); if (my_mkdir (absdir, 0777) == 0) -- 2.11.4.GIT