From 4791208720cee54a76e92431a92bc81937d1f46a Mon Sep 17 00:00:00 2001 From: Campbell Barton <ideasman42@gmail.com> Date: Tue, 9 Feb 2021 21:28:09 +1100 Subject: [PATCH] Fix mesh_snap_utilities_line running without key-maps available This caused script_load_addons test to fail in some cases. --- mesh_snap_utilities_line/__init__.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/mesh_snap_utilities_line/__init__.py b/mesh_snap_utilities_line/__init__.py index 623b03550..5e4d2f969 100644 --- a/mesh_snap_utilities_line/__init__.py +++ b/mesh_snap_utilities_line/__init__.py @@ -118,6 +118,9 @@ def register_keymaps(): keyconfigs = bpy.context.window_manager.keyconfigs kc_defaultconf = keyconfigs.default kc_addonconf = keyconfigs.addon + # In background mode. + if kc_defaultconf is None or kc_addonconf is None: + return # TODO: find the user defined tool_mouse. from bl_keymap_utils.io import keyconfig_init_from_data @@ -128,8 +131,11 @@ def register_keymaps(): #snap_modalkeymap.assign("MESH_OT_snap_utilities_line") def unregister_keymaps(): keyconfigs = bpy.context.window_manager.keyconfigs - defaultmap = keyconfigs.get("Blender").keymaps - addonmap = keyconfigs.get("Blender addon").keymaps + defaultmap = getattr(keyconfigs.get("Blender"), "keymaps", None) + addonmap = getattr(keyconfigs.get("Blender addon"), "keymaps", None) + # In background mode. + if defaultmap is None or addonmap is None: + return for keyconfig_data in keys.generate_snap_utilities_global_keymaps(): km_name, km_args, km_content = keyconfig_data -- GitLab