From: mpv Date: Thu, 12 Oct 2017 08:04:25 +0000 (+0300) Subject: Fix for the issue #2274: closing the study takes too much time. X-Git-Tag: V_2.9.1~12 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=ade68d25465a422af49d71881550bd89a2ecb824;p=modules%2Fshaper.git Fix for the issue #2274: closing the study takes too much time. --- diff --git a/src/Model/Model_BodyBuilder.cpp b/src/Model/Model_BodyBuilder.cpp index 4209b2401..738389350 100755 --- a/src/Model/Model_BodyBuilder.cpp +++ b/src/Model/Model_BodyBuilder.cpp @@ -94,7 +94,12 @@ static void evolutionToSelectionRec(TDF_Label theLab, const bool theFlag) { std::list >::iterator aPairsIter = aShapePairs.begin(); for(; aPairsIter != aShapePairs.end(); aPairsIter++) { if (theFlag) { // disabled => make selection - aBuilder.Select(aPairsIter->second, aPairsIter->first); + if (anEvolution == TNaming_DELETE) // issue 2274 : don't put too many same null shapes + aBuilder.Select(aPairsIter->first, aPairsIter->first); + else if (anEvolution == TNaming_PRIMITIVE) + aBuilder.Select(aPairsIter->second, aPairsIter->second); + else + aBuilder.Select(aPairsIter->second, aPairsIter->first); } else if (anEvol == TNaming_GENERATED) { aBuilder.Generated(aPairsIter->first, aPairsIter->second); } else if (anEvol == TNaming_MODIFY) {