nixio: Resolve namespace clashes

This commit is contained in:
Steven Barth 2009-06-21 13:41:18 +00:00
parent 8616bbc872
commit a2c71bf739
2 changed files with 21 additions and 21 deletions

View file

@ -66,19 +66,19 @@ function datacopy(src, dest, size)
end end
function copy(src, dest) function copy(src, dest)
local stat, code, msg, res = nixio.lstat(src) local stat, code, msg, res = nixio.fs.lstat(src)
if not stat then if not stat then
return nil, code, msg return nil, code, msg
end end
if stat.type == "dir" then if stat.type == "dir" then
if nixio.stat(dest, type) ~= "dir" then if nixio.fs.stat(dest, type) ~= "dir" then
res, code, msg = nixio.mkdir(dest) res, code, msg = nixio.fs.mkdir(dest)
else else
stat = true stat = true
end end
elseif stat.type == "lnk" then elseif stat.type == "lnk" then
res, code, msg = nixio.symlink(nixio.readlink(src), dest) res, code, msg = nixio.fs.symlink(nixio.fs.readlink(src), dest)
elseif stat.type == "reg" then elseif stat.type == "reg" then
res, code, msg = datacopy(src, dest) res, code, msg = datacopy(src, dest)
end end
@ -87,39 +87,39 @@ function copy(src, dest)
return nil, code, msg return nil, code, msg
end end
nixio.utimes(dest, stat.atime, stat.mtime) nixio.fs.utimes(dest, stat.atime, stat.mtime)
if nixio.lchown then if nixio.fs.lchown then
nixio.lchown(dest, stat.uid, stat.gid) nixio.fs.lchown(dest, stat.uid, stat.gid)
end end
if stat.type ~= "lnk" then if stat.type ~= "lnk" then
nixio.chmod(dest, stat.modedec) nixio.fs.chmod(dest, stat.modedec)
end end
return true return true
end end
function move(src, dest) function move(src, dest)
local stat, code, msg = nixio.rename(src, dest) local stat, code, msg = nixio.fs.rename(src, dest)
if not stat and code == nixio.const.EXDEV then if not stat and code == nixio.const.EXDEV then
stat, code, msg = nixio.copy(src, dest) stat, code, msg = copy(src, dest)
if stat then if stat then
stat, code, msg = nixio.unlink(src) stat, code, msg = nixio.fs.unlink(src)
end end
end end
return stat, code, msg return stat, code, msg
end end
function mkdirr(dest, mode) function mkdirr(dest, mode)
if nixio.stat(dest, "type") == "dir" then if nixio.fs.stat(dest, "type") == "dir" then
return true return true
else else
local stat, code, msg = nixio.mkdir(dest, mode) local stat, code, msg = nixio.fs.mkdir(dest, mode)
if not stat and code == nixio.const.ENOENT then if not stat and code == nixio.const.ENOENT then
stat, code, msg = mkdirr(nixio.dirname(dest), mode) stat, code, msg = mkdirr(nixio.fs.dirname(dest), mode)
if stat then if stat then
stat, code, msg = nixio.mkdir(dest, mode) stat, code, msg = nixio.fs.mkdir(dest, mode)
end end
end end
return stat, code, msg return stat, code, msg
@ -127,7 +127,7 @@ function mkdirr(dest, mode)
end end
local function _recurse(cb, src, dest) local function _recurse(cb, src, dest)
local type = nixio.lstat(src, "type") local type = nixio.fs.lstat(src, "type")
if type ~= "dir" then if type ~= "dir" then
return cb(src, dest) return cb(src, dest)
else else
@ -137,7 +137,7 @@ local function _recurse(cb, src, dest)
stat, code, msg = stat and s, c or code, m or msg stat, code, msg = stat and s, c or code, m or msg
end end
for e in nixio.dir(src) do for e in nixio.fs.dir(src) do
if dest then if dest then
s, c, m = _recurse(cb, src .. se .. e, dest .. se .. e) s, c, m = _recurse(cb, src .. se .. e, dest .. se .. e)
else else
@ -160,16 +160,16 @@ function copyr(src, dest)
end end
function mover(src, dest) function mover(src, dest)
local stat, code, msg = nixio.rename(src, dest) local stat, code, msg = nixio.fs.rename(src, dest)
if not stat and code == nixio.const.EXDEV then if not stat and code == nixio.const.EXDEV then
stat, code, msg = _recurse(copy, src, dest) stat, code, msg = _recurse(copy, src, dest)
if stat then if stat then
stat, code, msg = _recurse(nixio.remove, src) stat, code, msg = _recurse(nixio.fs.remove, src)
end end
end end
return stat, code, msg return stat, code, msg
end end
function remover(src) function remover(src)
return _recurse(nixio.remove, src) return _recurse(nixio.fs.remove, src)
end end

View file

@ -254,7 +254,7 @@ static int nixio_link(lua_State *L) {
static int nixio_utimes(lua_State *L) { static int nixio_utimes(lua_State *L) {
const char *path = luaL_checkstring(L, 1); const char *path = luaL_checkstring(L, 1);
if (lua_gettop(L) < 2) { if (lua_gettop(L) < 2 || (lua_isnoneornil(L, 2) && lua_isnoneornil(L, 3))) {
return nixio__pstatus(L, !utimes(path, NULL)); return nixio__pstatus(L, !utimes(path, NULL));
} else { } else {
double atime = luaL_checknumber(L, 2); double atime = luaL_checknumber(L, 2);