I think the current code is high risk since we usually don't touch other objects when we are finalizing stuff and it's generally a bug to do so.