Uploaded image for project: 'Apache Flex'
  1. Apache Flex
  2. FLEX-23819

RTE when running crossfade if it is already a runnin'

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • Adobe Flex SDK 4.1 (Release)
    • None
    • Spark: Effects
    • None
    • Affected OS(s): All OS Platforms
      Language Found: English

    Description

      Found in Flex 4.1.0.15465

      Steps to reproduce:
      1. Compile and run attached MXML file.

      <?xml version="1.0" encoding="utf-8"?>
      <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
      xmlns:s="library://ns.adobe.com/flex/spark"
      width="400" height="400">

      <fx:Declarations>
      <s:CrossFade id="e_CrossFade" target="

      {button}

      "/>
      </fx:Declarations>

      <s:Button id="button" width="300" height="300"
      label="Click Repeatedly to Crash" click="e_CrossFade.play();"/>

      </s:Application>

      2. Click the button a few times (slowly). It's all good, y'all.
      3. Double click the button to cause the effect to run again while already running.

      Actual Results:
      ArgumentError: Error #2015: Invalid BitmapData.
      at flash.display::DisplayObject/set filters()
      at mx.core::UIComponent/set filters()[E:\dev\trunk\frameworks\projects\framework\src\mx\core\UIComponent.as:3346]
      at spark.effects.supportClasses::AnimateTransitionShaderInstance/setValue()[E:\dev\trunk\frameworks\projects\spark\src\spark\effects\supportClasses\AnimateTransitionShaderInstance.as:361]
      at spark.effects.supportClasses::AnimateInstance/applyValues()[E:\dev\trunk\frameworks\projects\spark\src\spark\effects\supportClasses\AnimateInstance.as:510]
      at spark.effects.supportClasses::AnimateInstance/animationUpdate()[E:\dev\trunk\frameworks\projects\spark\src\spark\effects\supportClasses\AnimateInstance.as:669]
      at spark.effects.animation::Animation/sendUpdateEvent()[E:\dev\trunk\frameworks\projects\spark\src\spark\effects\animation\Animation.as:816]
      at spark.effects.animation::Animation/doInterval()[E:\dev\trunk\frameworks\projects\spark\src\spark\effects\animation\Animation.as:796]
      at spark.effects.animation::Animation$/timerHandler()[E:\dev\trunk\frameworks\projects\spark\src\spark\effects\animation\Animation.as:688]
      at flash.utils::Timer/_timerDispatch()
      at flash.utils::Timer/tick()

      Expected Results:
      No RTE.

      Workaround (if any):
      Check to see if the effect is already playing before trying to play it again (weaksauce):

      <s:Button id="button" width="300" height="300"
      label="Click Repeatedly to Crash" click="if (!e_CrossFade.isPlaying) e_CrossFade.play();"/>

      Attachments

        Activity

          People

            adobejira Adobe JIRA
            adobejira Adobe JIRA
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: