Bugfix [#28967] Attempting to add a new pose to the Pose Library

causes Blender 2.60 RC2 to crash

This commit just rolls back part of r.40868, which was causing crashes
when trying to treat id-property-groups as bpy.type.Property to access
a special "rna_type" attribute added as part of said commit.

The underlying Py-API voodoo here is far too evil (along with the
myriad of ways of creating custom props) to work out an API fix for,
but at least we don't get anymore crashes now. In tests here, this
check even seems redundant!
This commit is contained in:
Joshua Leung
2011-10-21 06:36:01 +00:00
parent 5efcf9bd1f
commit c22a1721e5

View File

@@ -364,12 +364,16 @@ class BUILTIN_KSI_WholeCharacter(KeyingSetInfo):
if prop == "_RNA_UI":
continue
# for now, just add all of 'em
# only do props which are marked as animatable, or those which are "numeric" types...
prop_rna = type(bone).bl_rna.properties.get(prop, None)
if prop_rna is None:
prop_path = '["%s"]' % prop
if bone.path_resolve(prop_path, False).rna_type in prop_type_compat:
ksi.addProp(ks, bone, prop_path)
# XXX: the check below from r.40868 causes crashes [#28967] on ID-prop groups,
# so let's just include everything (doing nothing breaks keying of Sintel face rig)
#if bone.path_resolve(prop_path, False).rna_type in prop_type_compat:
# ksi.addProp(ks, bone, prop_path)
ksi.addProp(ks, bone, prop_path)
elif prop_rna.is_animatable:
ksi.addProp(ks, bone, prop)