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

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Gavrilov <angavrilov@gmail.com>2020-12-09 17:54:34 +0300
committerAlexander Gavrilov <angavrilov@gmail.com>2020-12-09 17:57:16 +0300
commit1a3f127714e8da9f0af12d9a174dae9793ae63c1 (patch)
tree5d6170a904472907b93ec4c1f05e9c102ee69cc8
parent13bf2bfc39128cc2f7c5906a53d89de1a0f18f29 (diff)
Rigify: fix errors when no feature sets are installed.
Exceptions when the list is empty, and failing to clear the list.
-rw-r--r--rigify/__init__.py23
1 files changed, 13 insertions, 10 deletions
diff --git a/rigify/__init__.py b/rigify/__init__.py
index 63e42d1d..084a73c4 100644
--- a/rigify/__init__.py
+++ b/rigify/__init__.py
@@ -223,6 +223,14 @@ class RigifyPreferences(AddonPreferences):
set_list = feature_set_list.get_installed_list()
+ # Update feature set list
+ self.rigify_feature_sets.clear()
+
+ for s in set_list:
+ list_entry = self.rigify_feature_sets.add()
+ list_entry.name = feature_set_list.get_ui_name(s)
+ list_entry.module_name = s
+
if force or len(set_list) > 0:
# Reload rigs
print('Reloading external rigs...')
@@ -235,13 +243,6 @@ class RigifyPreferences(AddonPreferences):
# Re-register rig parameters
register_rig_parameters()
- # Update feature set list
- self.rigify_feature_sets.clear()
- for s in set_list:
- list_entry = self.rigify_feature_sets.add()
- list_entry.name = feature_set_list.get_ui_name(s)
- list_entry.module_name = s
-
legacy_mode: BoolProperty(
name='Legacy Mode',
description='When enabled the add-on will run in legacy mode using the old 2.76b feature set',
@@ -275,10 +276,12 @@ class RigifyPreferences(AddonPreferences):
# Clamp active index to ensure it's in bounds.
self.active_feature_set_index = max(0, min(self.active_feature_set_index, len(self.rigify_feature_sets)-1))
- active_fs = self.rigify_feature_sets[self.active_feature_set_index]
- if active_fs:
- draw_feature_set_prefs(layout, context, active_fs)
+ if len(self.rigify_feature_sets) > 0:
+ active_fs = self.rigify_feature_sets[self.active_feature_set_index]
+
+ if active_fs:
+ draw_feature_set_prefs(layout, context, active_fs)
def draw_feature_set_prefs(layout, context, featureset: RigifyFeatureSets):