fix [#28005] Python Add-Ons are constantly reloaded if twice in the path

Addons are checked for their timestamps and reloaded when it changes but this failed when, 2 addons had the same name since different times caused 2 reloads on every redraw.

Now when duplicate addons are in the path now give a error message in the UI and print path conflict in the console and don't thrash reloading.
This commit is contained in:
2011-07-18 05:41:46 +00:00
parent 13e82ff8e1
commit 8dd72c476e
2 changed files with 29 additions and 1 deletions

View File

@@ -889,6 +889,16 @@ class USERPREF_PT_addons(bpy.types.Panel):
return True
return False
@staticmethod
def draw_error(layout, message):
lines = message.split("\n")
box = layout.box()
rowsub = box.row()
rowsub.label(lines[0])
rowsub.label(icon='ERROR')
for l in lines[1:]:
box.label(l)
def draw(self, context):
layout = self.layout
@@ -909,6 +919,14 @@ class USERPREF_PT_addons(bpy.types.Panel):
col = split.column()
# set in addon_utils.modules(...)
if addon_utils.error_duplicates:
self.draw_error(col,
"Multiple addons using the same name found!\n"
"likely a problem with the script search path.\n"
"(see console for details)",
)
filter = context.window_manager.addon_filter
search = context.window_manager.addon_search.lower()
support = context.window_manager.addon_support