diff options
-rw-r--r-- | lib/pure/os.nim | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/pure/os.nim b/lib/pure/os.nim index 34819b396..5f957fea9 100644 --- a/lib/pure/os.nim +++ b/lib/pure/os.nim @@ -1015,21 +1015,20 @@ proc rawCreateDir(dir: string): bool = # Returns `true` if the directory was created, `false` if it already exists. when defined(solaris): let res = mkdir(dir, 0o777) - case res - of 0'i32: + if res == 0'i32: result = true - of EEXIST, ENOSYS: + elif errno in {EEXIST, ENOSYS}: result = false else: raiseOSError(osLastError()) elif defined(unix): let res = mkdir(dir, 0o777) - case res - of 0'i32: + if res == 0'i32: result = true - of EEXIST: + elif errno == EEXIST: result = false else: + echo res raiseOSError(osLastError()) else: when useWinUnicode: |