diff options
author | Bram Moolenaar <Bram@vim.org> | 2016-01-16 22:02:57 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2016-01-16 22:02:57 +0100 |
commit | 4cf7679383dca81a4a351e2b0ec333c95d6d9085 (patch) | |
tree | f439fad1b13e7dc676001386bc072fe2ee31315e /src/os_win32.c | |
parent | 58adb14739fa240ca6020cede9ab1f1cb07bd90a (diff) | |
download | vim-git-4cf7679383dca81a4a351e2b0ec333c95d6d9085.tar.gz |
patch 7.4.1109v7.4.1109
Problem: MS-Windows doesn't have rmdir().
Solution: Add mch_rmdir().
Diffstat (limited to 'src/os_win32.c')
-rw-r--r-- | src/os_win32.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/os_win32.c b/src/os_win32.c index c5b23ca7d..a47ffaf18 100644 --- a/src/os_win32.c +++ b/src/os_win32.c @@ -3154,6 +3154,30 @@ mch_mkdir(char_u *name) } /* + * Delete directory "name". + * Return 0 on success, -1 on error. + */ + int +mch_rmdir(char_u *name) +{ +#ifdef FEAT_MBYTE + if (enc_codepage >= 0 && (int)GetACP() != enc_codepage) + { + WCHAR *p; + int retval; + + p = enc_to_utf16(name, NULL); + if (p == NULL) + return -1; + retval = _wrmdir(p); + vim_free(p); + return retval; + } +#endif + return _rmdir(name); +} + +/* * Return TRUE if file "fname" has more than one link. */ int |