From: Piotr Caban piotr@codeweavers.com
--- dlls/msvcrt/dir.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/dlls/msvcrt/dir.c b/dlls/msvcrt/dir.c index 648c8d80884..4fd0d200500 100644 --- a/dlls/msvcrt/dir.c +++ b/dlls/msvcrt/dir.c @@ -1043,10 +1043,13 @@ int CDECL _wmkdir(const wchar_t* newdir) */ int CDECL _rmdir(const char * dir) { - if (RemoveDirectoryA(dir)) - return 0; - msvcrt_set_errno(GetLastError()); - return -1; + wchar_t *dirW = NULL; + int ret; + + if (dir && !(dirW = wstrdupa_utf8(dir))) return -1; + ret = _wrmdir(dirW); + free(dirW); + return ret; }
/*********************************************************************