Browse Source

Made type checking for love objects slightly more robust.

LÖVE should now cause an error instead of a crash when a Lua io file is passed into an argument expecting a love object.
Alex Szpakowski 9 years ago
parent
commit
cabf6dcae2
1 changed files with 5 additions and 1 deletions
  1. 5 1
      src/common/runtime.cpp

+ 5 - 1
src/common/runtime.cpp

@@ -465,7 +465,11 @@ bool luax_istype(lua_State *L, int idx, love::Type type)
 		return false;
 
 	Proxy *p = (Proxy *) lua_touserdata(L, idx);
-	return typeFlags[p->type][type];
+
+	if (p->type > INVALID_ID && p->type < TYPE_MAX_ENUM)
+		return typeFlags[p->type][type];
+	else
+		return false;
 }
 
 int luax_getfunction(lua_State *L, const char *mod, const char *fn)