diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2018-06-11 12:00:19 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2018-06-11 12:02:07 +0300 |
commit | 4d339f56fe04affc32ad5849fbe3fd395146e515 (patch) | |
tree | 8492efb8242f766b1c1f19671e4d99a91febb167 /release | |
parent | 9e8bd3a072cff37fcc7808bdbefa1fb78ab94c22 (diff) |
Fix T55278: Lightmap Pack > New Image broken when active object is None
thanx bblanimation (Christopher Gearhart) for spotting the issue and
providing the fix!
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D3449
Diffstat (limited to 'release')
-rw-r--r-- | release/scripts/startup/bl_operators/uvcalc_lightmap.py | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/release/scripts/startup/bl_operators/uvcalc_lightmap.py b/release/scripts/startup/bl_operators/uvcalc_lightmap.py index b8ea642dd55..3757a466382 100644 --- a/release/scripts/startup/bl_operators/uvcalc_lightmap.py +++ b/release/scripts/startup/bl_operators/uvcalc_lightmap.py @@ -556,12 +556,24 @@ def lightmap_uvpack(meshes, def unwrap(operator, context, **kwargs): - is_editmode = (context.object.mode == 'EDIT') + # only unwrap active object if True + PREF_ACT_ONLY = kwargs.pop("PREF_ACT_ONLY") + + # ensure object(s) are selected if necessary and active object is set + if context.object is None: + if PREF_ACT_ONLY: + operator.report({'WARNING'}, "Active object not set") + return {'CANCELLED'} + elif len(context.selected_objects) == 0: + operator.report({'WARNING'}, "No selected objects") + return {'CANCELLED'} + + # switch to object mode + is_editmode = context.object and context.object.mode == 'EDIT' if is_editmode: bpy.ops.object.mode_set(mode='OBJECT', toggle=False) - PREF_ACT_ONLY = kwargs.pop("PREF_ACT_ONLY") - + # define list of meshes meshes = [] if PREF_ACT_ONLY: obj = context.scene.objects.active @@ -576,6 +588,7 @@ def unwrap(operator, context, **kwargs): lightmap_uvpack(meshes, **kwargs) + # switch back to edit mode if is_editmode: bpy.ops.object.mode_set(mode='EDIT', toggle=False) |