From 208c191d889fec597f59a9563e6e245f38ae0cc6 Mon Sep 17 00:00:00 2001 From: David Wendt Date: Mon, 3 May 2021 18:45:47 -0400 Subject: [PATCH] core: `Avm2Button` always runs a frame on set children, even if it's not the current state --- core/src/display_object/avm2_button.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/core/src/display_object/avm2_button.rs b/core/src/display_object/avm2_button.rs index be60441ed..c72dc2e61 100644 --- a/core/src/display_object/avm2_button.rs +++ b/core/src/display_object/avm2_button.rs @@ -310,7 +310,15 @@ impl<'gc> Avm2Button<'gc> { if let Some(child) = child { child.frame_constructed(context); - child.run_frame(context); + } + } + + if let Some(child) = child { + child.run_frame(context); + } + + if swf::ButtonState::from(self.0.read().state) == state { + if let Some(child) = child { child.run_frame_scripts(context); child.exit_frame(context); }