[Bf-blender-cvs] [2e9e2715efa] master: Cleanup: use context.path_resolve instead of eval(..)

Campbell Barton noreply at git.blender.org
Wed Apr 6 10:03:39 CEST 2022


Commit: 2e9e2715efac89084afd276f1447499c304a6c5c
Author: Campbell Barton
Date:   Wed Apr 6 11:42:46 2022 +1000
Branches: master
https://developer.blender.org/rB2e9e2715efac89084afd276f1447499c304a6c5c

Cleanup: use context.path_resolve instead of eval(..)

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

M	release/scripts/modules/rna_prop_ui.py
M	release/scripts/modules/rna_xml.py

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

diff --git a/release/scripts/modules/rna_prop_ui.py b/release/scripts/modules/rna_prop_ui.py
index 1890735a40a..002b6e08290 100644
--- a/release/scripts/modules/rna_prop_ui.py
+++ b/release/scripts/modules/rna_prop_ui.py
@@ -43,7 +43,7 @@ def rna_idprop_context_value(context, context_member, property_type):
         rna_item = pin_id
         context_member = "space_data.pin_id"
     else:
-        rna_item = eval("context." + context_member)
+        rna_item = context.path_resolve(context_member)
 
     return rna_item, context_member
 
diff --git a/release/scripts/modules/rna_xml.py b/release/scripts/modules/rna_xml.py
index 5a76c7878b8..d576aeec860 100644
--- a/release/scripts/modules/rna_xml.py
+++ b/release/scripts/modules/rna_xml.py
@@ -345,14 +345,10 @@ def xml2rna(
 
 
 def _get_context_val(context, path):
-    path_full = "context." + path
     try:
-        value = eval(path_full)
-    except:
-        import traceback
-        traceback.print_exc()
-        print("Error: %r could not be found" % path_full)
-
+        value = context.path_resolve(path)
+    except Exception as ex:
+        print("Error: %r, path %r not found" % (ex, path))
         value = Ellipsis
 
     return value



More information about the Bf-blender-cvs mailing list