From 3ec88ae21df95546914863d80de4a76c8d3e3476 Mon Sep 17 00:00:00 2001 From: Demeter Dzadik Date: Mon, 10 Jan 2022 12:58:49 +0100 Subject: Fix error when keyframing with Custom Properties Since rBf9ccd26b037d, calling `data.path_resolve()` on custom properties with `None` value do not cause a `ValueError` exception any more. This is now taken into account in the keying sets targeting custom properties. Reviewed By: sybren Differential Revision: https://developer.blender.org/D13787 --- release/scripts/modules/keyingsets_utils.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'release') diff --git a/release/scripts/modules/keyingsets_utils.py b/release/scripts/modules/keyingsets_utils.py index de0b1435803..84a01ef3666 100644 --- a/release/scripts/modules/keyingsets_utils.py +++ b/release/scripts/modules/keyingsets_utils.py @@ -238,11 +238,15 @@ def RKS_GEN_custom_props(_ksi, _context, ks, data): continue prop_path = '["%s"]' % bpy.utils.escape_identifier(cprop_name) + try: rna_property = data.path_resolve(prop_path, False) except ValueError: - # This happens when a custom property is set to None. In that case it cannot - # be converted to an FCurve-compatible value, so we can't keyframe it anyway. + # Can technically happen, but there is no known case. + continue + if rna_property is None: + # In this case the property cannot be converted to an + # FCurve-compatible value, so we can't keyframe it anyways. continue if rna_property.rna_type not in prop_type_compat: continue -- cgit v1.2.3