[Bf-blender-cvs] [566b4f126da] master: Fix T78123: Can't remove preset with brackets in the name

Campbell Barton noreply at git.blender.org
Mon Jun 22 10:31:13 CEST 2020


Commit: 566b4f126da2b366ec191089856cd267eedc7cef
Author: Campbell Barton
Date:   Mon Jun 22 18:25:15 2020 +1000
Branches: master
https://developer.blender.org/rB566b4f126da2b366ec191089856cd267eedc7cef

Fix T78123: Can't remove preset with brackets in the name

===================================================================

M	release/scripts/startup/bl_operators/presets.py

===================================================================

diff --git a/release/scripts/startup/bl_operators/presets.py b/release/scripts/startup/bl_operators/presets.py
index c83d0b9f4d8..2ea93a1aee9 100644
--- a/release/scripts/startup/bl_operators/presets.py
+++ b/release/scripts/startup/bl_operators/presets.py
@@ -80,7 +80,8 @@ class AddPresetBase:
         name = name.lower().strip()
         name = bpy.path.display_name_to_filepath(name)
         trans = maketrans_init()
-        return name.translate(trans)
+        # Strip surrounding "_" as they are displayed as spaces.
+        return name.translate(trans).strip("_")
 
     def execute(self, context):
         import os
@@ -92,15 +93,16 @@ class AddPresetBase:
         preset_menu_class = getattr(bpy.types, self.preset_menu)
 
         is_xml = getattr(preset_menu_class, "preset_type", None) == 'XML'
+        is_preset_add = not (self.remove_name or self.remove_active)
 
         if is_xml:
             ext = ".xml"
         else:
             ext = ".py"
 
-        name = self.name.strip()
-        if not (self.remove_name or self.remove_active):
+        name = self.name.strip() if is_preset_add else self.name
 
+        if is_preset_add:
             if not name:
                 return {'FINISHED'}



More information about the Bf-blender-cvs mailing list