Browse Source

fixed issue #535

Nicolas Cannasse 14 years ago
parent
commit
a92d218165
1 changed files with 3 additions and 2 deletions
  1. 3 2
      std/flash9/_std/Reflect.hx

+ 3 - 2
std/flash9/_std/Reflect.hx

@@ -29,8 +29,9 @@
 		return o.hasOwnProperty( field );
 	}
 
-	public inline static function field( o : Dynamic, field : String ) : Dynamic untyped {
-		return (o == null) ? null : o[field];
+	public static function field( o : Dynamic, field : String ) : Dynamic untyped {
+		// sealed classes will throw an exception
+		return try o[field] catch( e : Dynamic ) null;
 	}
 
 	public inline static function setField( o : Dynamic, field : String, value : Dynamic ) : Void untyped {