This is an automated email from the ASF dual-hosted git repository.

yishayw pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git


The following commit(s) were added to refs/heads/develop by this push:
     new 17c8a9a  Fix exception in SWF target with recent changes in 
ContentView.
     new ea25a17  Merge pull request #1134 from 
estanglerbm/container-addelement-contentview-check
17c8a9a is described below

commit 17c8a9ae49284ea1cb33c166c2949d1baaf95eff
Author: Edward Stangler <[email protected]>
AuthorDate: Tue Jul 13 04:44:44 2021 -0500

    Fix exception in SWF target with recent changes in ContentView.
---
 .../Basic/src/main/royale/org/apache/royale/core/ContainerBase.as    | 5 +++++
 .../apache/royale/jewel/supportClasses/container/ContainerBase.as    | 5 +++++
 frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as    | 5 +++++
 3 files changed, 15 insertions(+)

diff --git 
a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ContainerBase.as
 
b/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ContainerBase.as
index 765fea2..e48a66a 100644
--- 
a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ContainerBase.as
+++ 
b/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ContainerBase.as
@@ -107,6 +107,11 @@ package org.apache.royale.core
                override public function addElement(c:IChild, 
dispatchEvent:Boolean = true):void
                {
                        var contentView:IParent = getLayoutHost().contentView 
as IParent;
+                       if (c == contentView)
+                       {
+                               super.addElement(c);
+                               return;
+                       }
                        contentView.addElement(c, dispatchEvent);
             if (dispatchEvent)
                 sendEvent(this,new ValueEvent("childrenAdded", c));
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/container/ContainerBase.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/container/ContainerBase.as
index 9832123..000fc2a 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/container/ContainerBase.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/container/ContainerBase.as
@@ -82,6 +82,11 @@ package org.apache.royale.jewel.supportClasses.container
                override public function addElement(c:IChild, 
dispatchEvent:Boolean = true):void
                {
                        var contentView:IParent = getLayoutHost().contentView 
as IParent;
+                       if (c == contentView)
+                       {
+                               super.addElement(c);
+                               return;
+                       }
                        contentView.addElement(c, dispatchEvent);
             if (dispatchEvent)
                 this.dispatchEvent(new ValueEvent("childrenAdded", c));
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as 
b/frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as
index 9f5d1b0..819ded5 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as
@@ -1378,6 +1378,11 @@ public class Container extends UIComponent
        override public function addElement(c:IChild, dispatchEvent:Boolean = 
true):void
        {
                var contentView:IParent = getLayoutHost().contentView as 
IParent;
+               if (c == contentView)
+               {
+                       super.addElement(c);
+                       return;
+               }
                contentView.addElement(c, dispatchEvent);
                if (dispatchEvent)
                        this.dispatchEvent(new ValueEvent("childrenAdded", c));

Reply via email to