diff options
| author | Rémi Verschelde <rverschelde@gmail.com> | 2024-08-16 14:35:20 +0200 |
|---|---|---|
| committer | Rémi Verschelde <rverschelde@gmail.com> | 2024-08-16 14:35:20 +0200 |
| commit | 5847d362de70379a28ecd70c890f7fce09f24220 (patch) | |
| tree | fcd37de88bfb63f82bdb2f7a77b839639b5649f5 | |
| parent | 1d4303c1feda7fda9df16d0db4beb9d41ff205ee (diff) | |
| parent | e7de6f872523ffff6b6a48c5fef31b2e2d309c63 (diff) | |
| download | redot-engine-5847d362de70379a28ecd70c890f7fce09f24220.tar.gz | |
Merge pull request #95505 from lyuma/import_null_external_animation_library
Avoid `[]` for `external_animation_library` import option
| -rw-r--r-- | editor/import/3d/scene_import_settings.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/editor/import/3d/scene_import_settings.cpp b/editor/import/3d/scene_import_settings.cpp index 6b741b7dd7..ed3eaa94c1 100644 --- a/editor/import/3d/scene_import_settings.cpp +++ b/editor/import/3d/scene_import_settings.cpp @@ -117,7 +117,9 @@ class SceneImportSettingsData : public Object { ERR_FAIL_NULL(settings); if (r_option.name == "rest_pose/load_pose") { if (!settings->has("rest_pose/load_pose") || int((*settings)["rest_pose/load_pose"]) != 2) { - (*settings)["rest_pose/external_animation_library"] = Variant(); + if (settings->has("rest_pose/external_animation_library")) { + (*settings)["rest_pose/external_animation_library"] = Variant(); + } } } if (r_option.name == "rest_pose/selected_animation") { @@ -134,7 +136,10 @@ class SceneImportSettingsData : public Object { } } break; case 2: { - Object *res = (*settings)["rest_pose/external_animation_library"]; + Object *res = nullptr; + if (settings->has("rest_pose/external_animation_library")) { + res = (*settings)["rest_pose/external_animation_library"]; + } Ref<Animation> anim(res); Ref<AnimationLibrary> library(res); if (anim.is_valid()) { |
