mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Merge pull request #4806 from justinmk/nodetype
os_nodetype: Return NODE_NORMAL if os_stat fails.
This commit is contained in:
commit
a441356858
@ -111,8 +111,8 @@ int os_nodetype(const char *name)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
uv_stat_t statbuf;
|
uv_stat_t statbuf;
|
||||||
if (os_stat(name, &statbuf) == 0) {
|
if (0 != os_stat(name, &statbuf)) {
|
||||||
return NODE_NORMAL;
|
return NODE_NORMAL; // File doesn't exist.
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
|
@ -14,6 +14,8 @@ local to_cstr = helpers.to_cstr
|
|||||||
local OK = helpers.OK
|
local OK = helpers.OK
|
||||||
local FAIL = helpers.FAIL
|
local FAIL = helpers.FAIL
|
||||||
local NULL = helpers.NULL
|
local NULL = helpers.NULL
|
||||||
|
local NODE_NORMAL = 0
|
||||||
|
local NODE_WRITABLE = 1
|
||||||
|
|
||||||
cimport('unistd.h')
|
cimport('unistd.h')
|
||||||
cimport('./src/nvim/os/shell.h')
|
cimport('./src/nvim/os/shell.h')
|
||||||
@ -357,15 +359,12 @@ describe('fs function', function()
|
|||||||
local function os_file_exists(filename)
|
local function os_file_exists(filename)
|
||||||
return fs.os_file_exists((to_cstr(filename)))
|
return fs.os_file_exists((to_cstr(filename)))
|
||||||
end
|
end
|
||||||
|
|
||||||
local function os_rename(path, new_path)
|
local function os_rename(path, new_path)
|
||||||
return fs.os_rename((to_cstr(path)), (to_cstr(new_path)))
|
return fs.os_rename((to_cstr(path)), (to_cstr(new_path)))
|
||||||
end
|
end
|
||||||
|
|
||||||
local function os_remove(path)
|
local function os_remove(path)
|
||||||
return fs.os_remove((to_cstr(path)))
|
return fs.os_remove((to_cstr(path)))
|
||||||
end
|
end
|
||||||
|
|
||||||
local function os_open(path, flags, mode)
|
local function os_open(path, flags, mode)
|
||||||
return fs.os_open((to_cstr(path)), flags, mode)
|
return fs.os_open((to_cstr(path)), flags, mode)
|
||||||
end
|
end
|
||||||
@ -484,6 +483,20 @@ describe('fs function', function()
|
|||||||
assert.is_true(0 <= (os_open(existing_file, ffi.C.kO_RDWR, 0)))
|
assert.is_true(0 <= (os_open(existing_file, ffi.C.kO_RDWR, 0)))
|
||||||
end)
|
end)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
describe('os_nodetype', function()
|
||||||
|
before_each(function()
|
||||||
|
os.remove('non-existing-file')
|
||||||
|
end)
|
||||||
|
|
||||||
|
it('returns NODE_NORMAL for non-existing file', function()
|
||||||
|
eq(NODE_NORMAL, fs.os_nodetype(to_cstr('non-existing-file')))
|
||||||
|
end)
|
||||||
|
|
||||||
|
it('returns NODE_WRITABLE for /dev/stderr', function()
|
||||||
|
eq(NODE_WRITABLE, fs.os_nodetype(to_cstr('/dev/stderr')))
|
||||||
|
end)
|
||||||
|
end)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
describe('folder operations', function()
|
describe('folder operations', function()
|
||||||
|
Loading…
Reference in New Issue
Block a user