diff options
| m--------- | core/src/tbox/tbox | 0 | ||||
| -rw-r--r-- | core/src/xmake/os/strerror.c | 18 |
2 files changed, 16 insertions, 2 deletions
diff --git a/core/src/tbox/tbox b/core/src/tbox/tbox -Subproject 14b85615dda8a1daf8abdef8883627be6432e86 +Subproject 6e6a0e8e766318708e3a2438ff6a9af7d8439e5 diff --git a/core/src/xmake/os/strerror.c b/core/src/xmake/os/strerror.c index 1a88546ec..2985d28de 100644 --- a/core/src/xmake/os/strerror.c +++ b/core/src/xmake/os/strerror.c @@ -45,11 +45,25 @@ tb_int_t xm_os_strerror(lua_State* lua) // get syserror state tb_size_t syserror = tb_syserror_state(); if (syserror != TB_STATE_SYSERROR_UNKNOWN_ERROR) - lua_pushstring(lua, tb_state_cstr(syserror)); + { + tb_char_t const* strerr = "Unknown"; + switch (syserror) + { + case TB_STATE_SYSERROR_NOT_PERM: + strerr = "Permission denied"; + break; + case TB_STATE_SYSERROR_NOT_FILEDIR: + strerr = "No such file or directory"; + break; + default: + break; + } + lua_pushstring(lua, strerr); + } else { #if defined(TB_CONFIG_OS_WINDOWS) && !defined(TB_COMPILER_LIKE_UNIX) - lua_pushstring(lua, tb_state_cstr(syserror)); + lua_pushstring(lua, "Unknown"); #else lua_pushstring(lua, strerror(errno)); #endif |
