Explorar o código

Fix animation player crashing when caching disabled tracks

MinusKube %!s(int64=3) %!d(string=hai) anos
pai
achega
a73882305c
Modificáronse 1 ficheiros con 3 adicións e 1 borrados
  1. 3 1
      scene/animation/animation_player.cpp

+ 3 - 1
scene/animation/animation_player.cpp

@@ -283,10 +283,12 @@ void AnimationPlayer::_ensure_node_caches(AnimationData *p_anim, Node *p_root_ov
 	setup_pass++;
 	setup_pass++;
 
 
 	for (int i = 0; i < a->get_track_count(); i++) {
 	for (int i = 0; i < a->get_track_count(); i++) {
+		p_anim->node_cache.write[i] = nullptr;
+
 		if (!a->track_is_enabled(i)) {
 		if (!a->track_is_enabled(i)) {
 			continue;
 			continue;
 		}
 		}
-		p_anim->node_cache.write[i] = nullptr;
+
 		Ref<Resource> resource;
 		Ref<Resource> resource;
 		Vector<StringName> leftover_path;
 		Vector<StringName> leftover_path;
 		Node *child = parent->get_node_and_resource(a->track_get_path(i), resource, leftover_path);
 		Node *child = parent->get_node_and_resource(a->track_get_path(i), resource, leftover_path);