diff options
| author | ruki <[email protected]> | 2020-02-21 22:47:02 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2020-02-21 10:42:12 +0800 |
| commit | 868450acbb14b1bf5cd2da7b1b09a195e88a6bd5 (patch) | |
| tree | 1f819dfe83532688d67f417069ffa4d0246d3933 /core/src | |
| parent | fd61c350299a4d888bb3e81594077224e5fb4252 (diff) | |
improve strerror and os
Diffstat (limited to 'core/src')
| m--------- | core/src/tbox/tbox | 0 | ||||
| -rw-r--r-- | core/src/xmake/os/cpfile.c | 4 | ||||
| -rw-r--r-- | core/src/xmake/os/strerror.c | 20 |
3 files changed, 12 insertions, 12 deletions
diff --git a/core/src/tbox/tbox b/core/src/tbox/tbox -Subproject 37ba0093d152b0d892925aee0e0d7b2ea66360c +Subproject 14b85615dda8a1daf8abdef8883627be6432e86 diff --git a/core/src/xmake/os/cpfile.c b/core/src/xmake/os/cpfile.c index e896c1136..b3aa56f4d 100644 --- a/core/src/xmake/os/cpfile.c +++ b/core/src/xmake/os/cpfile.c @@ -43,9 +43,7 @@ tb_int_t xm_os_cpfile(lua_State* lua) tb_char_t const* dst = luaL_checkstring(lua, 2); tb_check_return_val(src && dst, 0); - // done os.cpfile(src, dst) + // do copy lua_pushboolean(lua, tb_file_copy(src, dst)); - - // ok return 1; } diff --git a/core/src/xmake/os/strerror.c b/core/src/xmake/os/strerror.c index 399f0dedd..1a88546ec 100644 --- a/core/src/xmake/os/strerror.c +++ b/core/src/xmake/os/strerror.c @@ -29,9 +29,7 @@ * includes */ #include "prefix.h" -#ifdef TB_CONFIG_OS_WINDOWS -# include <windows.h> -#else +#if !defined(TB_CONFIG_OS_WINDOWS) || defined(TB_COMPILER_LIKE_UNIX) # include <errno.h> # include <string.h> #endif @@ -44,13 +42,17 @@ tb_int_t xm_os_strerror(lua_State* lua) // check tb_assert_and_check_return_val(lua, 0); - // done os.strerror() -#ifdef TB_CONFIG_OS_WINDOWS - lua_pushstring(lua, tb_state_cstr(tb_syserror_state())); + // get syserror state + tb_size_t syserror = tb_syserror_state(); + if (syserror != TB_STATE_SYSERROR_UNKNOWN_ERROR) + lua_pushstring(lua, tb_state_cstr(syserror)); + else + { +#if defined(TB_CONFIG_OS_WINDOWS) && !defined(TB_COMPILER_LIKE_UNIX) + lua_pushstring(lua, tb_state_cstr(syserror)); #else - lua_pushstring(lua, strerror(errno)); + lua_pushstring(lua, strerror(errno)); #endif - - // ok + } return 1; } |
