Reactos
at master 29 lines 712 B view raw
1// 2// mkdir.cpp 3// 4// Copyright (c) Microsoft Corporation. All rights reserved. 5// 6// The _mkdir() function, which creates a directory. 7// 8#include <corecrt_internal.h> 9#include <direct.h> 10#include <corecrt_internal_win32_buffer.h> 11 12// Creates a directory. Returns 0 on success; returns -1 and sets errno and 13// _doserrno on failure. 14extern "C" int __cdecl _mkdir(char const* const path) 15{ 16 if (path == nullptr) { 17 return _wmkdir(nullptr); 18 } 19 20 __crt_internal_win32_buffer<wchar_t> wide_path; 21 22 errno_t const cvt = __acrt_mbs_to_wcs_cp(path, wide_path, __acrt_get_utf8_acp_compatibility_codepage()); 23 24 if (cvt != 0) { 25 return -1; 26 } 27 28 return _wmkdir(wide_path.data()); 29}