diff -uprN iup/srclua5/bin2c.lua iup-b/srclua5/bin2c.lua --- iup/srclua5/bin2c.lua Mon Dec 11 14:53:34 2017 +++ iup-b/srclua5/bin2c.lua Sat Jul 21 12:58:38 2018 @@ -25,10 +25,11 @@ end local compile, filename = arg[1]:match"^(+?)(.*)" local status = arg[2] +local code = assert(io.open(filename,"rb")):read"*a" local content = compile=="+" - and string.dump(assert(loadfile(filename))) - or assert(io.open(filename,"rb")):read"*a" + and string.dump(load(code, '='..filename)) + or code local function boilerplate(fmt) return string.format(fmt, @@ -58,9 +59,9 @@ static const unsigned char B1[]={ }; - %siuplua_dobuffer(L,(const char*)B1,sizeof(B1),%q)%s; + %siuplua_dobuffer(L,(const char*)B1,sizeof(B1),"="%q)%s; } ]=]) -- replaced by iuplua_dobuffer --- if (%sluaL_loadbuffer(L,(const char*)B1,sizeof(B1),%q)%s==0) %slua_pcall(L, 0, 0, 0); +-- if (%sluaL_loadbuffer(L,(const char*)B1,sizeof(B1),"="%q)%s==0) %slua_pcall(L, 0, 0, 0); diff -uprN iup/srclua5/iuplua.c iup-b/srclua5/iuplua.c --- iup/srclua5/iuplua.c Thu May 3 13:54:42 2018 +++ iup-b/srclua5/iuplua.c Sat Jul 21 09:23:34 2018 @@ -300,7 +300,7 @@ static int il_dostring(lua_State *L) int old_top = lua_gettop(L); size_t size; const char* str = luaL_checklstring(L, 1, &size); - int status = iuplua_dobuffer(L, str, (int)size, "iup.dostring"); + int status = iuplua_dobuffer(L, str, (int)size, "=iup.dostring"); if (status == LUA_OK) { int top = lua_gettop(L); diff -uprN iup/srcluaconsole/bin2c.lua iup-b/srcluaconsole/bin2c.lua --- iup/srcluaconsole/bin2c.lua Mon Dec 11 14:53:38 2017 +++ iup-b/srcluaconsole/bin2c.lua Sat Jul 21 12:59:02 2018 @@ -25,10 +25,11 @@ end local compile, filename = arg[1]:match"^(+?)(.*)" local status = arg[2] +local code = assert(io.open(filename,"rb")):read"*a" local content = compile=="+" - and string.dump(assert(loadfile(filename))) - or assert(io.open(filename,"rb")):read"*a" + and string.dump(load(code, '='..filename)) + or code local function boilerplate(fmt) return string.format(fmt, @@ -58,9 +59,9 @@ static const unsigned char B1[]={ }; - %siuplua_dobuffer(L,(const char*)B1,sizeof(B1),%q)%s; + %siuplua_dobuffer(L,(const char*)B1,sizeof(B1),"="%q)%s; } ]=]) -- replaced by iuplua_dobuffer --- if (%sluaL_loadbuffer(L,(const char*)B1,sizeof(B1),%q)%s==0) %slua_pcall(L, 0, 0, 0); +-- if (%sluaL_loadbuffer(L,(const char*)B1,sizeof(B1),"="%q)%s==0) %slua_pcall(L, 0, 0, 0);