diff options
Diffstat (limited to '')
| -rw-r--r-- | lstring.c | 8 |
1 files changed, 5 insertions, 3 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lstring.c,v 1.67 2001/08/31 19:46:07 roberto Exp $ | 2 | ** $Id: lstring.c,v 1.1 2001/11/29 22:14:34 rieru Exp rieru $ |
| 3 | ** String table (keeps all strings handled by Lua) | 3 | ** String table (keeps all strings handled by Lua) |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -84,9 +84,11 @@ TString *luaS_newlstr (lua_State *L, const char *str, size_t l) { | |||
| 84 | 84 | ||
| 85 | 85 | ||
| 86 | Udata *luaS_newudata (lua_State *L, size_t s) { | 86 | Udata *luaS_newudata (lua_State *L, size_t s) { |
| 87 | Udata *u = cast(Udata *, luaM_malloc(L, sizeudata(s))); | 87 | Udata *u; |
| 88 | if (s & 1) s++; /* make sure size is even */ | ||
| 89 | u = cast(Udata *, luaM_malloc(L, sizeudata(s))); | ||
| 88 | u->uv.len = s; | 90 | u->uv.len = s; |
| 89 | u->uv.tag = 0; | 91 | u->uv.eventtable = hvalue(defaultet(L)); |
| 90 | u->uv.value = u + 1; | 92 | u->uv.value = u + 1; |
| 91 | /* chain it on udata list */ | 93 | /* chain it on udata list */ |
| 92 | u->uv.next = G(L)->rootudata; | 94 | u->uv.next = G(L)->rootudata; |
