Added "emergency collection" to 'io.tmpfile' and 'os.tmpname'

These operations also can give errors for lack of resources, so they
also will try "emergency collections" in case of resource errors.
Because there are now two libraries with that kind of handling,
'resourcetryagain' was moved to the auxiliary library to be shared
by the libraries.
This commit is contained in:
Roberto Ierusalimschy
2018-07-27 15:50:53 -03:00
parent aa4c5cf190
commit 3d838f635c
5 changed files with 71 additions and 50 deletions

View File

@@ -1,5 +1,5 @@
/*
** $Id: lauxlib.h,v 1.133 2017/06/27 18:32:49 roberto Exp roberto $
** $Id: lauxlib.h $
** Auxiliary functions for building Lua libraries
** See Copyright Notice in lua.h
*/
@@ -77,6 +77,9 @@ LUALIB_API int (luaL_checkoption) (lua_State *L, int arg, const char *def,
LUALIB_API int (luaL_fileresult) (lua_State *L, int stat, const char *fname);
LUALIB_API int (luaL_execresult) (lua_State *L, int stat);
LUALIB_API int (luaL_resourcetryagain) (lua_State *L);
/* predefined references */
#define LUA_NOREF (-2)
#define LUA_REFNIL (-1)