         	{
 	            destFunc.call(document, value);
 
-	            //	Note: state is not updated if destFunc throws
-	            lastValue = value;
-	            hasHadValue = true;
+                if(destFuncFailed == false) {
+                    //	Note: state is not updated if destFunc throws
+                    lastValue = value;
+                    hasHadValue = true;
+	            }
 	        }
         }
     }

     *  @productversion Flex 3
     */
    mx_internal var destFunc:Function;

	/**
     *  The destination represented as a String.

        try
        {
            var result:Object = wrappedFunction.apply(thisArg, args);
            if(destFuncFailed == true) {
                destFuncFailed = false;
                return null;
            }
            wrappedFunctionSuccessful = true;
            return result;
        }
