diff options
author | Julian Laubstein <julianlaubstein@yahoo.de> | 2015-11-04 22:32:11 +0100 |
---|---|---|
committer | Julian Laubstein <julianlaubstein@yahoo.de> | 2015-11-04 23:25:00 +0100 |
commit | 9a7dd0a0770178529c704c08bc446e3533b1f3e5 (patch) | |
tree | 2ef6b11f07074c22d44b7f2396e3a96562376974 /lib/lua/src/lmem.c | |
parent | Merge pull request #2597 from cuberite/faviconChange (diff) | |
download | cuberite-9a7dd0a0770178529c704c08bc446e3533b1f3e5.tar cuberite-9a7dd0a0770178529c704c08bc446e3533b1f3e5.tar.gz cuberite-9a7dd0a0770178529c704c08bc446e3533b1f3e5.tar.bz2 cuberite-9a7dd0a0770178529c704c08bc446e3533b1f3e5.tar.lz cuberite-9a7dd0a0770178529c704c08bc446e3533b1f3e5.tar.xz cuberite-9a7dd0a0770178529c704c08bc446e3533b1f3e5.tar.zst cuberite-9a7dd0a0770178529c704c08bc446e3533b1f3e5.zip |
Diffstat (limited to 'lib/lua/src/lmem.c')
m--------- | lib/lua | 0 | ||||
-rw-r--r-- | lib/lua/src/lmem.c | 86 |
2 files changed, 0 insertions, 86 deletions
diff --git a/lib/lua b/lib/lua new file mode 160000 +Subproject dd27acefcd98a28c68e686f414a42302113471f diff --git a/lib/lua/src/lmem.c b/lib/lua/src/lmem.c deleted file mode 100644 index ae7d8c965..000000000 --- a/lib/lua/src/lmem.c +++ /dev/null @@ -1,86 +0,0 @@ -/* -** $Id: lmem.c,v 1.70.1.1 2007/12/27 13:02:25 roberto Exp $ -** Interface to Memory Manager -** See Copyright Notice in lua.h -*/ - - -#include <stddef.h> - -#define lmem_c -#define LUA_CORE - -#include "lua.h" - -#include "ldebug.h" -#include "ldo.h" -#include "lmem.h" -#include "lobject.h" -#include "lstate.h" - - - -/* -** About the realloc function: -** void * frealloc (void *ud, void *ptr, size_t osize, size_t nsize); -** (`osize' is the old size, `nsize' is the new size) -** -** Lua ensures that (ptr == NULL) iff (osize == 0). -** -** * frealloc(ud, NULL, 0, x) creates a new block of size `x' -** -** * frealloc(ud, p, x, 0) frees the block `p' -** (in this specific case, frealloc must return NULL). -** particularly, frealloc(ud, NULL, 0, 0) does nothing -** (which is equivalent to free(NULL) in ANSI C) -** -** frealloc returns NULL if it cannot create or reallocate the area -** (any reallocation to an equal or smaller size cannot fail!) -*/ - - - -#define MINSIZEARRAY 4 - - -void *luaM_growaux_ (lua_State *L, void *block, int *size, size_t size_elems, - int limit, const char *errormsg) { - void *newblock; - int newsize; - if (*size >= limit/2) { /* cannot double it? */ - if (*size >= limit) /* cannot grow even a little? */ - luaG_runerror(L, errormsg); - newsize = limit; /* still have at least one free place */ - } - else { - newsize = (*size)*2; - if (newsize < MINSIZEARRAY) - newsize = MINSIZEARRAY; /* minimum size */ - } - newblock = luaM_reallocv(L, block, *size, newsize, size_elems); - *size = newsize; /* update only when everything else is OK */ - return newblock; -} - - -void *luaM_toobig (lua_State *L) { - luaG_runerror(L, "memory allocation error: block too big"); - return NULL; /* to avoid warnings */ -} - - - -/* -** generic allocation routine. -*/ -void *luaM_realloc_ (lua_State *L, void *block, size_t osize, size_t nsize) { - global_State *g = G(L); - lua_assert((osize == 0) == (block == NULL)); - block = (*g->frealloc)(g->ud, block, osize, nsize); - if (block == NULL && nsize > 0) - luaD_throw(L, LUA_ERRMEM); - lua_assert((nsize == 0) == (block == NULL)); - g->totalbytes = (g->totalbytes - osize) + nsize; - return block; -} - |