Screen __index: Don't turn argument into a string
Calling lua_tostring() on a number/integer, turns that stack slot into a string. This patch changes the code to only call lua_tostring() if the function argument really is a string. This partly also caused https://github.com/awesomeWM/awesome/issues/238. Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
parent
84f09d9c69
commit
4c517cf9d3
2
screen.c
2
screen.c
|
@ -422,7 +422,7 @@ luaA_screen_module_index(lua_State *L)
|
||||||
{
|
{
|
||||||
const char *name;
|
const char *name;
|
||||||
|
|
||||||
if((name = lua_tostring(L, 2)))
|
if(lua_type(L, 2) == LUA_TSTRING && (name = lua_tostring(L, 2)))
|
||||||
foreach(screen, globalconf.screens)
|
foreach(screen, globalconf.screens)
|
||||||
foreach(output, screen->outputs)
|
foreach(output, screen->outputs)
|
||||||
if(A_STREQ(output->name, name))
|
if(A_STREQ(output->name, name))
|
||||||
|
|
Loading…
Reference in New Issue