GP-6734 Keep HighEdge map symmetric

This commit is contained in:
caheckman
2026-04-22 17:56:33 +00:00
parent 829ee7cce4
commit d4cdef264e

View File

@@ -1121,8 +1121,11 @@ void HighIntersectTest::moveIntersectTests(HighVariable *high1,HighVariable *hig
iter = highedgemap.lower_bound( HighEdge(high1,(HighVariable *)0) );
while((iter!=highedgemap.end())&&((*iter).first.a == high1)) {
if (!(*iter).second) { // If test is intersection==false
if (!(*iter).first.b->isMark()) // and there was no test with high2
highedgemap.erase( iter++ ); // Delete the test
if (!(*iter).first.b->isMark()) { // and there was no test with high2
// Delete both edges of the test
highedgemap.erase( HighEdge( (*iter).first.b, (*iter).first.a) );
highedgemap.erase( iter++ );
}
else
++iter;
}