mirror of https://github.com/mpv-player/mpv
lua: set a proper chunk name for builtin modules
luaL_loadstring(), which was used until now, uses the start of the Lua code itself as chunk name. Since the chunk name shows up even with runtime errors triggered by e.g. Lua code loaded from user scripts, this looks a but ugly. Switch to luaL_loadbuffer(), which is almost the same as luaL_loadstring(), but allows setting a chunk name.
This commit is contained in:
parent
d706f8181a
commit
32d18d77cd
|
@ -164,7 +164,8 @@ static int load_builtin(lua_State *L)
|
||||||
const char *name = luaL_checkstring(L, 1);
|
const char *name = luaL_checkstring(L, 1);
|
||||||
for (int n = 0; builtin_lua_scripts[n][0]; n++) {
|
for (int n = 0; builtin_lua_scripts[n][0]; n++) {
|
||||||
if (strcmp(name, builtin_lua_scripts[n][0]) == 0) {
|
if (strcmp(name, builtin_lua_scripts[n][0]) == 0) {
|
||||||
if (luaL_loadstring(L, builtin_lua_scripts[n][1]))
|
const char *script = builtin_lua_scripts[n][1];
|
||||||
|
if (luaL_loadbuffer(L, script, strlen(script), name))
|
||||||
lua_error(L);
|
lua_error(L);
|
||||||
lua_call(L, 0, 1);
|
lua_call(L, 0, 1);
|
||||||
return 1;
|
return 1;
|
||||||
|
|
Loading…
Reference in New Issue