diff --git a/src/XCAFDoc/XCAFDoc_GraphNode.cxx b/src/XCAFDoc/XCAFDoc_GraphNode.cxx index 673064bf48..b07d59ca0c 100644 --- a/src/XCAFDoc/XCAFDoc_GraphNode.cxx +++ b/src/XCAFDoc/XCAFDoc_GraphNode.cxx @@ -379,6 +379,8 @@ void XCAFDoc_GraphNode::Paste(const Handle(TDF_Attribute)& into, if (!func.IsNull()) { intof->SetFather(func); + if (func->ChildIndex(this) && !func->ChildIndex(intof)) + func->SetChild(intof); } } @@ -392,6 +394,8 @@ void XCAFDoc_GraphNode::Paste(const Handle(TDF_Attribute)& into, if (!func.IsNull()) { intof->SetChild(func); + if (func->FatherIndex(this) && !func->FatherIndex(intof)) + func->SetFather(intof); } } intof->SetGraphID(myGraphID);