From 6f7493f16ae964b2d9596625262994dafad873f4 Mon Sep 17 00:00:00 2001 From: Nathan Adams Date: Fri, 31 Mar 2023 20:06:27 +0200 Subject: [PATCH] avm2: Don't sync BitmapData when getting .rect --- core/src/avm2/globals/flash/display/bitmap_data.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/core/src/avm2/globals/flash/display/bitmap_data.rs b/core/src/avm2/globals/flash/display/bitmap_data.rs index 4dda190b6..86688963b 100644 --- a/core/src/avm2/globals/flash/display/bitmap_data.rs +++ b/core/src/avm2/globals/flash/display/bitmap_data.rs @@ -1001,15 +1001,19 @@ pub fn get_rect<'gc>( this: Option>, _args: &[Value<'gc>], ) -> Result, Error<'gc>> { - if let Some(bitmap_data) = this.and_then(|this| this.as_bitmap_data()) { - let bd = bitmap_data.read(); + if let Some(bitmap_data) = this.and_then(|this| this.as_bitmap_data_wrapper()) { return Ok(activation .avm2() .classes() .rectangle .construct( activation, - &[0.into(), 0.into(), bd.width().into(), bd.height().into()], + &[ + 0.into(), + 0.into(), + bitmap_data.width().into(), + bitmap_data.height().into(), + ], )? .into()); }