From b0895651ee5b9111b21e6e8a9b358f5867e64b07 Mon Sep 17 00:00:00 2001 From: Josh Tynjala Date: Wed, 29 May 2024 13:59:59 -0700 Subject: [PATCH] DisplayObjectContainer: throw error when attempting to add object as child to itself Matches flash target behavior, and makes the issue more clear (instead of freeze/hang) --- src/openfl/display/DisplayObjectContainer.hx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/openfl/display/DisplayObjectContainer.hx b/src/openfl/display/DisplayObjectContainer.hx index 7b521d2c5e..c43ba8d3ba 100644 --- a/src/openfl/display/DisplayObjectContainer.hx +++ b/src/openfl/display/DisplayObjectContainer.hx @@ -194,6 +194,12 @@ class DisplayObjectContainer extends InteractiveObject error.errorID = 2007; throw error; } + else if (child == this) + { + var error = new ArgumentError("Error #2024: An object cannot be added as a child of itself."); + error.errorID = 2024; + throw error; + } #if ((haxe_ver >= "3.4.0") || !cpp) else if (child.stage == child) {