From 68b08848d4ce0fcdcab8d7d1489cf77a6efd7ae8 Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Tue, 20 Feb 2001 15:29:54 -0300 Subject: [PATCH] `dostring' now is safe to run binary code. --- lbaselib.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/lbaselib.c b/lbaselib.c index 93ddc2ac..cbaf3b4e 100644 --- a/lbaselib.c +++ b/lbaselib.c @@ -1,5 +1,5 @@ /* -** $Id: lbaselib.c,v 1.22 2001/02/06 13:59:29 roberto Exp roberto $ +** $Id: lbaselib.c,v 1.23 2001/02/09 19:52:24 roberto Exp roberto $ ** Basic library ** See Copyright Notice in lua.h */ @@ -284,9 +284,8 @@ static int luaB_dostring (lua_State *L) { int oldtop = lua_gettop(L); size_t l; const char *s = luaL_check_lstr(L, 1, &l); - if (*s == '\33') /* binary files start with ESC... */ - lua_error(L, "`dostring' cannot run pre-compiled code"); - return passresults(L, lua_dobuffer(L, s, l, luaL_opt_string(L, 2, s)), oldtop); + const char *chunkname = luaL_opt_string(L, 2, s); + return passresults(L, lua_dobuffer(L, s, l, chunkname), oldtop); }