         if (!isContentLoaded)
             return false;
             
-        if (contentHolder is Loader)
-            return Loader(contentHolder).contentLoaderInfo.childAllowsParent;
+        try
+        {
+            if (contentHolder is Loader)
+                return Loader(contentHolder).contentLoaderInfo.childAllowsParent;
+        }
+        catch (error:Error)
+        {
+            // Error #2099: The loading object is not sufficiently loaded to provide this information.
+            // We can get this if this content has been unload
+            return false;
+        }
         
         return true;
     }

            {
                try 
                {
                        if (Loader(contentHolder).content is IFlexDisplayObject)
                                                flexContent = true;
                                        else
                            flexContent = swfBridge != null;
                }
                catch(e:Error)
                {
                        // trace("contentLoader: " + e);
                    flexContent = swfBridge != null;
                }
            }

                        // Also ignore if the sm doesn't have a notifyStyleChangeInChildren method
        }
    }

    /**
     *  @private 
     *  @throws Error - #2099 if the content has been unloaded 
     */    
    private function getContentSize():Point
    {
        var pt:Point = new Point();
        
        if (!contentHolder is Loader)
            return pt;
                
        var holder:Loader = Loader(contentHolder);
        if (holder.contentLoaderInfo.childAllowsParent)
        {
            pt.x = holder.content.width;
            pt.y = holder.content.height;
        }
        else
        {
            var bridge:IEventDispatcher = swfBridge;
            if (bridge)
            {
                var request:SWFBridgeRequest = new SWFBridgeRequest(SWFBridgeRequest.GET_SIZE_REQUEST);
                bridge.dispatchEvent(request);
                pt.x = request.data.width;
                pt.y = request.data.height;
            }
        }

        // don't return zero out of here otherwise the Loader's scale goes to zero
        if (pt.x == 0)
            pt.x = holder.contentLoaderInfo.width;
        if (pt.y == 0)
            pt.y = holder.contentLoaderInfo.height;

        return pt;
    }
}

}
