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

Browser freeze or application throws error when s:DataGroup itemRenderer's s:RichText textFlow has <img> element

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • Adobe Flex SDK Previous
    • None
    • Spark: RichText
    • None
    • Affected OS(s): Windows
      Affected OS(s): Windows XP
      Browser: Firefox 3.x
      Language Found: English

    Description

      When s:DataGroup itemRenderer's s:RichText textFlow has <img> element, every now and then and for specific data, the application throws error and then freezes / crashes the browser.
      The following link provides some details on this issue:
      http://forums.adobe.com/message/3922703#3922703

      Subsequent to this, I have see my application freeze the browser with the following error:
      Error: Error #1502: A script has executed for longer than the default timeout period of 15 seconds.
      at mx.managers::FocusManager/removeFocusables()
      at mx.managers::FocusManager/removedHandler()
      at flash.display::DisplayObjectContainer/removeChild()
      at mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::$removeChild()
      at mx.core::UIComponent/removeChild()
      at spark.components::RichEditableText/removeChild()
      at flashx.textLayout.container::ContainerController/removeTextLine()
      at flashx.textLayout.container::ContainerController/removeAndRecycleTextLines()
      at flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::updateCompositionShapes()
      at flashx.textLayout.compose::StandardFlowComposer/updateCompositionShapes()
      at flashx.textLayout.compose::StandardFlowComposer/updateToController()
      at flashx.textLayout.compose::StandardFlowComposer/updateAllControllers()
      at flashx.textLayout.container::TextContainerManager/updateContainer()
      at spark.components::RichEditableText/updateDisplayList()
      at mx.core::UIComponent/validateDisplayList()
      at mx.managers::LayoutManager/validateDisplayList()
      at mx.managers::LayoutManager/doPhasedInstantiation()
      at mx.managers::LayoutManager/doPhasedInstantiationCallback()

      For specific data and situation, the issue is encountered every time but I haven't been able to reproduce it in the form of a test case.

      Every now and then, for different data, I also get the following error:
      TypeError: Error #2007: Parameter child must be non-null.
      at flash.display::DisplayObjectContainer/addChild()
      at flashx.textLayout.factory::TextFlowTextLineFactory/callbackWithTextLines()[C:\Vellum\branches\v2\2.0\dev\output\openSource\textLayout\src\flashx\textLayout\factory\TextFlowTextLineFactory.as:267]
      at flashx.textLayout.factory::TextFlowTextLineFactory/createTextLinesInternal()[C:\Vellum\branches\v2\2.0\dev\output\openSource\textLayout\src\flashx\textLayout\factory\TextFlowTextLineFactory.as:245]
      at flashx.textLayout.factory::TextFlowTextLineFactory/createTextLines()[C:\Vellum\branches\v2\2.0\dev\output\openSource\textLayout\src\flashx\textLayout\factory\TextFlowTextLineFactory.as:104]
      at spark.components::RichText/createTextLines()[E:\dev\4.5.1\frameworks\projects\spark\src\spark\components\RichText.as:1296]
      at spark.components::RichText/http://www.adobe.com/2006/flex/mx/internal::composeTextLines()[E:\dev\4.5.1\frameworks\projects\spark\src\spark\components\RichText.as:1173]
      at spark.components.supportClasses::TextBase/measure()[E:\dev\4.5.1\frameworks\projects\spark\src\spark\components\supportClasses\TextBase.as:534]
      at mx.core::UIComponent/measureSizes()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\core\UIComponent.as:8496]
      at mx.core::UIComponent/validateSize()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\core\UIComponent.as:8420]
      at mx.managers::LayoutManager/validateClient()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\managers\LayoutManager.as:987]
      at mx.core::UIComponent/validateNow()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\core\UIComponent.as:8067]
      at spark.components::DataGroup/initializeTypicalItem()[E:\dev\4.5.1\frameworks\projects\spark\src\spark\components\DataGroup.as:297]
      at spark.components::DataGroup/ensureTypicalLayoutElement()[E:\dev\4.5.1\frameworks\projects\spark\src\spark\components\DataGroup.as:352]
      at spark.components::DataGroup/measure()[E:\dev\4.5.1\frameworks\projects\spark\src\spark\components\DataGroup.as:1354]
      at mx.core::UIComponent/measureSizes()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\core\UIComponent.as:8496]
      at mx.core::UIComponent/validateSize()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\core\UIComponent.as:8420]
      at mx.managers::LayoutManager/validateSize()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\managers\LayoutManager.as:665]
      at mx.managers::LayoutManager/doPhasedInstantiation()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\managers\LayoutManager.as:816]
      at mx.managers::LayoutManager/doPhasedInstantiationCallback()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\managers\LayoutManager.as:1180]

      Since this issue is occurring in a large application with complex data structure, I don't know what else to provide at this stage but I'm more than happy to share code snippets.

      Attachments

        Activity

          People

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

            Dates

              Created:
              Updated: