aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Pall <mike>2010-02-28 22:22:45 +0100
committerMike Pall <mike>2010-02-28 22:22:45 +0100
commit89c90f09555598cf67735dbed7f4fb46941f2e5c (patch)
tree90cdcaf5ac919e4930c929e5962300923a29e023 /src
parent8cc50cf6b1c791e9d7694b5f47dc03f9456d08e1 (diff)
downloadluajit-89c90f09555598cf67735dbed7f4fb46941f2e5c.tar.gz
luajit-89c90f09555598cf67735dbed7f4fb46941f2e5c.tar.bz2
luajit-89c90f09555598cf67735dbed7f4fb46941f2e5c.zip
Fix error message generation for OOM error.
Diffstat (limited to 'src')
-rw-r--r--src/lj_err.c1
-rw-r--r--src/lj_gc.c4
2 files changed, 3 insertions, 2 deletions
diff --git a/src/lj_err.c b/src/lj_err.c
index 0aaf5497..7db37f3b 100644
--- a/src/lj_err.c
+++ b/src/lj_err.c
@@ -737,6 +737,7 @@ LJ_NOINLINE void lj_err_mem(lua_State *L)
737{ 737{
738 if (L->status == LUA_ERRERR+1) /* Don't touch the stack during lua_open. */ 738 if (L->status == LUA_ERRERR+1) /* Don't touch the stack during lua_open. */
739 lj_vm_unwind_c(L->cframe, LUA_ERRMEM); 739 lj_vm_unwind_c(L->cframe, LUA_ERRMEM);
740 L->top = L->base;
740 setstrV(L, L->top++, lj_err_str(L, LJ_ERR_ERRMEM)); 741 setstrV(L, L->top++, lj_err_str(L, LJ_ERR_ERRMEM));
741 lj_err_throw(L, LUA_ERRMEM); 742 lj_err_throw(L, LUA_ERRMEM);
742} 743}
diff --git a/src/lj_gc.c b/src/lj_gc.c
index 19cc9e7b..276cd4da 100644
--- a/src/lj_gc.c
+++ b/src/lj_gc.c
@@ -746,7 +746,7 @@ void *lj_mem_realloc(lua_State *L, void *p, MSize osz, MSize nsz)
746 lua_assert((osz == 0) == (p == NULL)); 746 lua_assert((osz == 0) == (p == NULL));
747 p = g->allocf(g->allocd, p, osz, nsz); 747 p = g->allocf(g->allocd, p, osz, nsz);
748 if (p == NULL && nsz > 0) 748 if (p == NULL && nsz > 0)
749 lj_err_throw(L, LUA_ERRMEM); 749 lj_err_mem(L);
750 lua_assert((nsz == 0) == (p == NULL)); 750 lua_assert((nsz == 0) == (p == NULL));
751 lua_assert(checkptr32(p)); 751 lua_assert(checkptr32(p));
752 g->gc.total = (g->gc.total - osz) + nsz; 752 g->gc.total = (g->gc.total - osz) + nsz;
@@ -759,7 +759,7 @@ void *lj_mem_newgco(lua_State *L, MSize size)
759 global_State *g = G(L); 759 global_State *g = G(L);
760 GCobj *o = (GCobj *)g->allocf(g->allocd, NULL, 0, size); 760 GCobj *o = (GCobj *)g->allocf(g->allocd, NULL, 0, size);
761 if (o == NULL) 761 if (o == NULL)
762 lj_err_throw(L, LUA_ERRMEM); 762 lj_err_mem(L);
763 lua_assert(checkptr32(o)); 763 lua_assert(checkptr32(o));
764 g->gc.total += size; 764 g->gc.total += size;
765 setgcrefr(o->gch.nextgc, g->gc.root); 765 setgcrefr(o->gch.nextgc, g->gc.root);