Forráskód Böngészése

[lua] if dynamic is not table, return empty array for Reflect.fields

Justin Donaldson 8 éve
szülő
commit
e439eede66
1 módosított fájl, 6 hozzáadás és 0 törlés
  1. 6 0
      std/lua/Boot.hx

+ 6 - 0
std/lua/Boot.hx

@@ -336,6 +336,12 @@ class Boot {
 	}
 
 	public static function fieldIterator( o : Table<String,Dynamic>) : Iterator<String> {
+		if (Lua.type(o) != "table") {
+			return  {
+				next : function() return null,
+				hasNext : function() return false
+			}
+		}
 		var tbl : Table<String,String> =  cast (untyped o.__fields__ != null) ?  o.__fields__ : o;
 		var cur = Lua.pairs(tbl).next;
 		var next_valid = function(tbl, val){