Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKévin Dietrich <kevin.dietrich@mailoo.org>2018-03-16 06:06:18 +0300
committerKévin Dietrich <kevin.dietrich@mailoo.org>2018-03-16 06:06:34 +0300
commite5327afcb73f102db8a82ccefc29bbf9cc6fb60c (patch)
treecff6f4465e0e43224e4eaf967e5436b7258c464f /source/blender/editors/io/io_alembic.c
parent07b07e53ea0831ffb0c2a3aff0a33b40aa935c5c (diff)
Fix T54326: Import Alembic stuck in edit mode
Switch to object mode before doing the import.
Diffstat (limited to 'source/blender/editors/io/io_alembic.c')
-rw-r--r--source/blender/editors/io/io_alembic.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/source/blender/editors/io/io_alembic.c b/source/blender/editors/io/io_alembic.c
index ca4ab30a08d..08181af2ef3 100644
--- a/source/blender/editors/io/io_alembic.c
+++ b/source/blender/editors/io/io_alembic.c
@@ -59,6 +59,8 @@
#include "RNA_define.h"
#include "RNA_enum_types.h"
+#include "ED_object.h"
+
#include "UI_interface.h"
#include "UI_resources.h"
@@ -543,6 +545,22 @@ static int wm_alembic_import_exec(bContext *C, wmOperator *op)
}
}
+ /* Switch to object mode to avoid being stuck in other modes (T54326). */
+ if (CTX_data_mode_enum(C) != CTX_MODE_OBJECT) {
+ Object *obedit = CTX_data_edit_object(C);
+
+ if (obedit != NULL) {
+ ED_object_mode_toggle(C, obedit->mode);
+ }
+ else {
+ Object *ob = CTX_data_active_object(C);
+
+ if (ob) {
+ ED_object_mode_toggle(C, ob->mode);
+ }
+ }
+ }
+
bool ok = ABC_import(C, filename, scale, is_sequence, set_frame_range,
sequence_len, offset, validate_meshes,
as_background_job);