It's a security error to specify a non-null SecurityDomain to Loader

when in a local sandbox. Annoying.


git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@270 ed5b42cb-e716-0410-a449-f6a68f950b19
This commit is contained in:
Ray Greenwell
2007-07-05 02:39:10 +00:00
parent 640b6fe1f6
commit 603d6bb0d2
+18 -1
View File
@@ -49,6 +49,7 @@ import flash.text.TextFieldAutoSize;
import flash.system.ApplicationDomain;
import flash.system.LoaderContext;
import flash.system.Security;
import flash.system.SecurityDomain;
import flash.net.URLRequest;
@@ -428,7 +429,7 @@ public class MediaContainer extends Sprite
// load images into our domain so that we can view their pixels
return new LoaderContext(true,
new ApplicationDomain(ApplicationDomain.currentDomain),
SecurityDomain.currentDomain);
getSecurityDomain(url));
} else {
// share nothing, trust nothing
@@ -436,6 +437,22 @@ public class MediaContainer extends Sprite
}
}
/**
* Return the security domain to use for the specified image url.
*/
protected function getSecurityDomain (imageURL :String) :SecurityDomain
{
switch (Security.sandboxType) {
case Security.LOCAL_WITH_FILE:
case Security.LOCAL_WITH_NETWORK:
case Security.LOCAL_TRUSTED:
return null;
default:
return SecurityDomain.currentDomain;
}
}
/**
* Does the specified url represent an image?
*/