Quick fix to how objects are tested before being sent in a message.

We used to compare them against the Object class, but that doesn't work 
well in the presence of multiple application domains. So instead we
check for the presence of parent classes.



git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@166 c613c5cb-e716-0410-b11b-feb51c14d237
This commit is contained in:
Robert Zubeck
2007-02-09 21:42:13 +00:00
parent 69f47e8ed2
commit f8bf896e22
@@ -15,6 +15,7 @@ import flash.display.InteractiveObject;
import flash.utils.IExternalizable;
import flash.utils.ByteArray;
import flash.utils.Dictionary;
import flash.utils.getQualifiedSuperclassName;
import com.threerings.io.TypedArray;
@@ -481,7 +482,9 @@ public class GameControlBackend
if (clazz == ByteArray) {
return; // kosher
}
if (clazz != Object ) {
var clazzparentname :String = getQualifiedSuperclassName (clazz);
var rootclass :Boolean = (clazzparentname == null);
if (! rootclass) {
throw new ArgumentError(
"Non-simple properties may not be set.");
}