|
The old version assumed that the rigid groups appeared in the new
list in the same order as the old one. Note the use of subscript "i"
for both arrays here:
if ( rigid_group_is_in_collection(
in->rigid_group_collections[rgci],
in->rigid_groups[i]) )
[....]
add_to_rigid_group_coll(rgcoll,
out->rigid_groups[i]);
However, the new list of rigid groups, out->rigid_groups, was
constructed not by copying the old list (in->rigid_groups), but rather
by iterating over the panels and adding the groups as they were
encountered. Therefore, the assumption of same ordering was invalid,
and the new rigid group collection incorrect.
|