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

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2018-07-06 08:55:29 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-07-06 08:55:29 +0300
commitd56b90705e81768ca1a586b622ef4bbe3b216d5c (patch)
tree7cb78fbfb6d40a53d316a3bfb4cf55122ae62cbd /source/blender/blenkernel/intern/addon.c
parent52655f51619d0ab06bbde6966c31d15f6ab4ab19 (diff)
BKE_addons: utility to remove by name
Diffstat (limited to 'source/blender/blenkernel/intern/addon.c')
-rw-r--r--source/blender/blenkernel/intern/addon.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/addon.c b/source/blender/blenkernel/intern/addon.c
index a9bb193a7a1..854bf62c061 100644
--- a/source/blender/blenkernel/intern/addon.c
+++ b/source/blender/blenkernel/intern/addon.c
@@ -69,6 +69,17 @@ bAddon *BKE_addon_ensure(ListBase *addon_list, const char *module)
return addon;
}
+bool BKE_addon_remove_safe(ListBase *addon_list, const char *module)
+{
+ bAddon *addon = BLI_findstring(addon_list, module, offsetof(bAddon, module));
+ if (addon) {
+ BLI_remlink(addon_list, addon);
+ BKE_addon_free(addon);
+ return true;
+ }
+ return false;
+}
+
void BKE_addon_free(bAddon *addon)
{
if (addon->prop) {