diff options
author | lijenstina <lijenstina@gmail.com> | 2016-12-02 17:16:41 +0300 |
---|---|---|
committer | lijenstina <lijenstina@gmail.com> | 2016-12-02 17:16:41 +0300 |
commit | 5d2f8137cb3f86432657789eaa80948ebce2cc28 (patch) | |
tree | 4e1bbccb68d86611b03feb005d2fa6fabdae10bb /space_view3d_spacebar_menu.py | |
parent | 3aaa6f21d001ed97b4d6a381f0c97d5086190913 (diff) |
Spacebar Menu: fix crash during (F8) reload
Prevent multiple removal by using the class.__dict__
check
Diffstat (limited to 'space_view3d_spacebar_menu.py')
-rw-r--r-- | space_view3d_spacebar_menu.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/space_view3d_spacebar_menu.py b/space_view3d_spacebar_menu.py index 98bf98f3..99577b3c 100644 --- a/space_view3d_spacebar_menu.py +++ b/space_view3d_spacebar_menu.py @@ -3006,9 +3006,6 @@ def register(): # Unegister Classes & Hotkeys # def unregister(): - for cls in classes: - bpy.utils.unregister_class(cls) - wm = bpy.context.window_manager kc = wm.keyconfigs.addon if kc: @@ -3018,6 +3015,10 @@ def unregister(): if kmi.properties.name == "VIEW3D_MT_Space_Dynamic_Menu": km.keymap_items.remove(kmi) break + for cls in classes: + # prevent multiple removal attempt + if "bl_rna" in cls.__dict__: + bpy.utils.unregister_class(cls) if __name__ == "__main__": register() |