Fix for unix and solaris

This commit is contained in:
Dmitry Polienko 2016-10-22 12:52:16 +07:00
commit 1f641b1337

View file

@ -1015,21 +1015,20 @@ proc rawCreateDir(dir: string): bool =
# Returns `true` if the directory was created, `false` if it already exists. # Returns `true` if the directory was created, `false` if it already exists.
when defined(solaris): when defined(solaris):
let res = mkdir(dir, 0o777) let res = mkdir(dir, 0o777)
case res if res == 0'i32:
of 0'i32:
result = true result = true
of EEXIST, ENOSYS: elif errno in {EEXIST, ENOSYS}:
result = false result = false
else: else:
raiseOSError(osLastError()) raiseOSError(osLastError())
elif defined(unix): elif defined(unix):
let res = mkdir(dir, 0o777) let res = mkdir(dir, 0o777)
case res if res == 0'i32:
of 0'i32:
result = true result = true
of EEXIST: elif errno == EEXIST:
result = false result = false
else: else:
echo res
raiseOSError(osLastError()) raiseOSError(osLastError())
else: else:
when useWinUnicode: when useWinUnicode: