Fix #105096: Material Utilities: Clean Material Slots fails to remove unused slots

The code was removing material slots while iterating through them which
is generally a bad idea, and it stopped working as the addon expected in
Blender 3.0+.

The slots are now removed by counting how many slots there are and then
removing that number of slots.

Pull Request: https://projects.blender.org/blender/blender-addons/pulls/105098
This commit is contained in:
Thomas Barlow
2024-01-11 12:23:47 +01:00
committed by Mysteryem
parent f0a0966688
commit cbbe37ba5a
2 changed files with 2 additions and 2 deletions

View File

@ -20,7 +20,7 @@
bl_info = {
"name": "Material Utilities",
"author": "MichaleW, ChrisHinde",
"version": (2, 2, 1),
"version": (2, 2, 2),
"blender": (3, 0, 0),
"location": "View3D > Shift + Q key",
"description": "Menu of material tools (assign, select..) in the 3D View",

View File

@ -16,7 +16,7 @@ def mu_assign_material_slots(object, material_list):
active_object = bpy.context.active_object
bpy.context.view_layer.objects.active = object
for s in object.material_slots:
for _ in range(len(object.material_slots)):
bpy.ops.object.material_slot_remove()
# re-add them and assign material