From d2f583d839d5e52e7f4fbb3261fe00472b99b585 Mon Sep 17 00:00:00 2001 From: Uli Schlachter Date: Sat, 13 Jun 2015 11:18:47 +0200 Subject: [PATCH] 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 --- objects/screen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/objects/screen.c b/objects/screen.c index d9a5993a..3321bd0d 100644 --- a/objects/screen.c +++ b/objects/screen.c @@ -458,7 +458,7 @@ luaA_screen_module_index(lua_State *L) { 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(output, (*screen)->outputs) if(A_STREQ(output->name, name))