      */
     public function remove(parent:UIComponent):void
     {   
-        var obj:* = getOverrideContext(target, parent);
+        var obj:* = getOverrideContext(appliedTarget, parent);
         if (obj != null && applied)
         {
             var propName:String = (PSEUDONYMS[name] && (PSEUDONYMS[name] in target)) ?

	        // Clear our flags and override context.
	        applied = false;
	        parentContext = null;
        }
    }


     *  @productversion Flex 3
     */
    public var target:Object;
    
    /**
     *  The cached target for which we applied our override.
     *  We keep track of the applied target while applied since
     *  our target may be swapped out in the owning document and 
     *  we want to make sure we roll back the correct (original) 
     *  element. 
     *
     *  @private
     */
    private var appliedTarget:Object;

    //----------------------------------
    //  value
