Hi devs,

So, was investigating a weird issue today found while doing some static override tests, and ended up finding the someone, at some era lost in the mist of times, had the genius idea of creating a sort of infinite recursion in  PointCache RNA struct (defined in rna_object_force.c). That is, pointcache owner has a pointer to active pointcache, and said active pointcache has a collection of all pointcaches from owner's list (since in DNA, PointCache is actually a linked list item).

Needless to say that this totally breaks attempt to walk in RNA data, since you'll indefinitely dive into recursive versions of point_caches collection items (giving RNA paths like that: 'particle_systems["feathers_big"].point_cache.point_caches[0].point_caches[0].point_caches[0].…').

Before nuking this non-sense away and sanitizing the mess, I thought I’d ask if someone remembers any good reason for current RNA code/layout there… Since changing that will introduce RNA API breakage (though point_cache does not seems to be used by any addon in our repositories currently), would also probably only do it in 2.8 branch?

Cheers,
Bastien

_______________________________________________
Bf-committers mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-committers

Reply via email to