| 244 | |
| 245 | |
| 246 | LUALIB_API int luaL_fileresult (lua_State *L, int stat, const char *fname) { |
| 247 | int en = errno; /* calls to Lua API may change this value */ |
| 248 | if (stat) { |
| 249 | lua_pushboolean(L, 1); |
| 250 | return 1; |
| 251 | } |
| 252 | else { |
| 253 | const char *msg; |
| 254 | luaL_pushfail(L); |
| 255 | msg = (en != 0) ? strerror(en) : "(no extra info)"; |
| 256 | if (fname) |
| 257 | lua_pushfstring(L, "%s: %s", fname, msg); |
| 258 | else |
| 259 | lua_pushstring(L, msg); |
| 260 | lua_pushinteger(L, en); |
| 261 | return 3; |
| 262 | } |
| 263 | } |
| 264 | |
| 265 | |
| 266 | #if !defined(l_inspectstat) /* { */ |
no test coverage detected