     public function shutdown (completely :Boolean = true) :void
     {
         try {
+            // remove the mask
+            if (_media != null && _media.mask != null) {
+                rawChildren.removeChild(_media.mask);
+                _media.mask = null;
+            }
+
             if (_media is Loader) {
                 var loader :Loader = (_media as Loader);
                 // remove any listeners

        info.addEventListener(ProgressEvent.PROGRESS, loadProgress);

        // create a mask to prevent the media from drawing out of bounds
        if (maxContentWidth < int.MAX_VALUE  &&
                maxContentHeight < int.MAX_VALUE) {
            var mask :Shape = new Shape();
            mask.graphics.beginFill(0xFFFFFF);
            mask.graphics.drawRect(0, 0, maxContentWidth, maxContentHeight);
            mask.graphics.endFill();
            // the mask must be added to the display list (which is wacky)
            rawChildren.addChild(mask);
            loader.mask = mask;
        }

        // start it loading, add it as a child

                }
                loader.unload();

                rawChildren.removeChild(loader);

            } else if (_media is VideoDisplay) {
