[Bf-blender-cvs] [681a7d724b1] master: PyAPI: replace repr with our own escape function in animsys_refactor
Campbell Barton
noreply at git.blender.org
Tue Mar 30 12:59:23 CEST 2021
Commit: 681a7d724b1ab7df811adb951239ff35c9dbaa1f
Author: Campbell Barton
Date: Tue Mar 30 21:53:52 2021 +1100
Branches: master
https://developer.blender.org/rB681a7d724b1ab7df811adb951239ff35c9dbaa1f
PyAPI: replace repr with our own escape function in animsys_refactor
Use the same string escaping logic shared by RNA path resolving code.
===================================================================
M release/scripts/modules/animsys_refactor.py
===================================================================
diff --git a/release/scripts/modules/animsys_refactor.py b/release/scripts/modules/animsys_refactor.py
index 97e8a8dd144..fd4952e2a53 100644
--- a/release/scripts/modules/animsys_refactor.py
+++ b/release/scripts/modules/animsys_refactor.py
@@ -32,12 +32,6 @@ import bpy
IS_TESTING = False
-def drepr(string):
- # is there a less crappy way to do this in python?, re.escape also escapes
- # single quotes strings so can't use it.
- return '"%s"' % repr(string)[1:-1].replace("\"", "\\\"").replace("\\'", "'")
-
-
def classes_recursive(base_type, clss=None):
if clss is None:
clss = [base_type]
@@ -66,7 +60,7 @@ class DataPathBuilder:
if type(key) is int:
str_value = '[%d]' % key
elif type(key) is str:
- str_value = '[%s]' % drepr(key)
+ str_value = '["%s"]' % bpy.utils.escape_identifier(key)
else:
raise Exception("unsupported accessor %r of type %r (internal error)" % (key, type(key)))
return DataPathBuilder(self.data_path + (str_value, ))
More information about the Bf-blender-cvs
mailing list