Gui: add coinRemoveAllChildren to work around Coin3D bug
See bug description: https://bitbucket.org/Coin3D/coin/pull-requests/119/fix-sochildlist-auditing/diff Because of path based rendering (SoFCPathAnnotation) in mouse over highlight, this bug causes crash more frequently here comparing to upstream. All C++ calling of SoGroup::removeAllChildren() is replaced by Gui::coinRemoveAllChildren(), and python code is fixed by monkey patching SoGroup.removeAllChildren() in FreeCADGuiInit.py.
This commit is contained in:
@@ -1559,7 +1559,7 @@ void Document::handleChildren3D(ViewProvider* viewProvider)
|
||||
if (childGroup->getNumChildren() != static_cast<int>(children.size())) {
|
||||
|
||||
rebuild = true;
|
||||
childGroup->removeAllChildren();
|
||||
Gui::coinRemoveAllChildren(childGroup);
|
||||
|
||||
for (std::vector<App::DocumentObject*>::iterator it=children.begin();it!=children.end();++it) {
|
||||
ViewProvider* ChildViewProvider = getViewProvider(*it);
|
||||
|
||||
Reference in New Issue
Block a user