From ad2531a0eefb6950d589c0d508b1f959f3f58d8b Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Tue, 3 May 2011 13:01:57 -0300 Subject: more complete (and hopefuly more correct) handling of 'sizeof(char)' --- lstring.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'lstring.c') diff --git a/lstring.c b/lstring.c index 4144cb18..73c3c15f 100644 --- a/lstring.c +++ b/lstring.c @@ -1,5 +1,5 @@ /* -** $Id: lstring.c,v 2.17 2010/04/03 20:24:18 roberto Exp roberto $ +** $Id: lstring.c,v 2.18 2010/05/10 18:23:45 roberto Exp roberto $ ** String table (keeps all strings handled by Lua) ** See Copyright Notice in lua.h */ @@ -84,8 +84,9 @@ TString *luaS_newlstr (lua_State *L, const char *str, size_t l) { o != NULL; o = gch(o)->next) { TString *ts = rawgco2ts(o); - if (h == ts->tsv.hash && ts->tsv.len == l && - (memcmp(str, getstr(ts), l) == 0)) { + if (h == ts->tsv.hash && + ts->tsv.len == l && + (memcmp(str, getstr(ts), l * sizeof(char)) == 0)) { if (isdead(G(L), o)) /* string is dead (but was not collected yet)? */ changewhite(o); /* resurrect it */ return ts; -- cgit v1.2.3-55-g6feb