Subject: Node::remove_child() is called carelessly A couple of recent bugs have been caused by remove_child() removing a node from the parent_set when it shouldn't have, due to a sibling using the same node. One case was with two layer parameters linked to each other, and the other was two sub-parameters of the Switch valuenode being linked to each other. This same type of bug seems to be present in other places too, and should be killed. ------------------------------------------------------------------------ The two fixed bugs were: 2353284: If two parameters in the same layer are connected to the same r2291 valuenode and we disconnect one of them, the parent-child relationship for the remaining connection was being deleted. Now we search the parameter list to see if another parameter uses the same valuenode. 2412072: Don't remove a node from the parent set of a linkable r2311 valuenode when replacing a link if the link is still in use by one of the sibling links.