From 693e56dc67e09531f13652d5d23182f95c204b03 Mon Sep 17 00:00:00 2001 From: David Wendt Date: Mon, 5 Oct 2020 22:24:59 -0400 Subject: [PATCH] core: Always instantiate a new movie's library before creating it's root movieclip. --- core/src/loader.rs | 2 ++ core/src/player.rs | 3 +++ 2 files changed, 5 insertions(+) diff --git a/core/src/loader.rs b/core/src/loader.rs index 063907301..042eb9cb0 100644 --- a/core/src/loader.rs +++ b/core/src/loader.rs @@ -461,6 +461,8 @@ impl<'gc> Loader<'gc> { .lock() .expect("Could not lock player!!") .update(|uc| { + uc.library.library_for_movie_mut(movie.clone()); + let (clip, broadcaster) = match uc.load_manager.get_loader(handle) { Some(Loader::Movie { target_clip, diff --git a/core/src/player.rs b/core/src/player.rs index a3bb0e055..e294efb29 100644 --- a/core/src/player.rs +++ b/core/src/player.rs @@ -338,8 +338,11 @@ impl Player { self.instance_counter = 0; self.mutate_with_update_context(|context| { + context.library.library_for_movie_mut(context.swf.clone()); + let root: DisplayObject = MovieClip::from_movie(context.gc_context, context.swf.clone()).into(); + root.set_depth(context.gc_context, 0); root.post_instantiation(context, root, None, Instantiator::Movie, false); root.set_name(context.gc_context, "");