]> git.e2factory.org Git - e2factory.git/commitdiff
e2lib: make use of errcode in mkdir()
authorTobias Ulmer <tu@emlix.com>
Tue, 5 Sep 2017 15:01:34 +0000 (17:01 +0200)
committerTobias Ulmer <tu@emlix.com>
Mon, 10 Dec 2018 17:00:11 +0000 (18:00 +0100)
Signed-off-by: Tobias Ulmer <tu@emlix.com>
generic/e2lib.lua

index 8f4db94a2e26c55ab43e31d7f4a6b483eff0603b..f567557193ddbc79216b3dea20515c9337dbbccd 100644 (file)
@@ -2189,8 +2189,9 @@ function e2lib.mkdir(dir, mode)
     local rc, errstring, errnum = le2lib.mkdir(dir, mode)
 
     if not rc then
-        return false, err.new("cannot create directory %q: %s", dir,
-            errstring), errnum
+        return false, err.ecset(
+            err.new("cannot create directory %q: %s", dir, errstring),
+            errno.errnum2def(errnum))
     end
 
     return true
@@ -2213,16 +2214,12 @@ function e2lib.mkdir_recursive(path, mode)
         end
     end
 
-    eexist = errno.def2errnum("EEXIST")
-
     trace.filter_function("e2lib", "mkdir")
     for _,dir in ipairs(dirs) do
         rc, re, errnum = e2lib.mkdir(dir, mode)
-        if not rc then
-            if errnum ~= eexist then
-                trace.filter_function_remove("e2lib", "mkdir")
-                return false, re
-            end
+        if not rc and not err.eccmp(re, "EEXIST") then
+            trace.filter_function_remove("e2lib", "mkdir")
+            return false, re
         end
     end
     trace.filter_function_remove("e2lib", "mkdir")