Browse Source

Avoid crashing in #23302

Juan Linietsky 6 năm trước cách đây
mục cha
commit
c743da100d
1 tập tin đã thay đổi với 7 bổ sung0 xóa
  1. 7 0
      scene/animation/animation_tree.cpp

+ 7 - 0
scene/animation/animation_tree.cpp

@@ -685,6 +685,10 @@ bool AnimationTree::_update_caches(AnimationPlayer *player) {
 						track = track_animation;
 
 					} break;
+					default: {
+						ERR_PRINT("Animation corrupted (invalid track type");
+						continue;
+					}
 				}
 
 				track_cache[path] = track;
@@ -853,6 +857,9 @@ void AnimationTree::_process_graph(float p_delta) {
 			for (int i = 0; i < a->get_track_count(); i++) {
 
 				NodePath path = a->track_get_path(i);
+
+				ERR_CONTINUE(!track_cache.has(path));
+
 				TrackCache *track = track_cache[path];
 				if (track->type != a->track_get_type(i)) {
 					continue; //may happen should not