Loading pcbnew/router/pns_joint.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -112,7 +112,7 @@ public: LINKED_ITEMS::iterator f = std::find( m_linkedItems.begin(), m_linkedItems.end(), aItem ); LINKED_ITEMS::iterator f = std::find( m_linkedItems.begin(), m_linkedItems.end(), aItem ); if( f != m_linkedItems.end() ) if( f != m_linkedItems.end() ) m_linkedItems.erase( f ); f = m_linkedItems.erase( f ); return m_linkedItems.size() == 0; return m_linkedItems.size() == 0; } } Loading pcbnew/router/pns_node.cpp +8 −1 Original line number Original line Diff line number Diff line Loading @@ -1216,12 +1216,19 @@ int PNS_NODE::FindByMarker( int aMarker, PNS_ITEMSET& aItems ) int PNS_NODE::RemoveByMarker( int aMarker ) int PNS_NODE::RemoveByMarker( int aMarker ) { { std::list<PNS_ITEM*> garbage; for( PNS_INDEX::ITEM_SET::iterator i = m_index->begin(); i != m_index->end(); ++i ) for( PNS_INDEX::ITEM_SET::iterator i = m_index->begin(); i != m_index->end(); ++i ) { { if ( (*i)->Marker() & aMarker ) if ( (*i)->Marker() & aMarker ) { { Remove( *i ); garbage.push_back( *i ); } } } for( std::list<PNS_ITEM*>::const_iterator i = garbage.begin(), end = garbage.end(); i != end; ++i ) { Remove( *i ); } } return 0; return 0; Loading Loading
pcbnew/router/pns_joint.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -112,7 +112,7 @@ public: LINKED_ITEMS::iterator f = std::find( m_linkedItems.begin(), m_linkedItems.end(), aItem ); LINKED_ITEMS::iterator f = std::find( m_linkedItems.begin(), m_linkedItems.end(), aItem ); if( f != m_linkedItems.end() ) if( f != m_linkedItems.end() ) m_linkedItems.erase( f ); f = m_linkedItems.erase( f ); return m_linkedItems.size() == 0; return m_linkedItems.size() == 0; } } Loading
pcbnew/router/pns_node.cpp +8 −1 Original line number Original line Diff line number Diff line Loading @@ -1216,12 +1216,19 @@ int PNS_NODE::FindByMarker( int aMarker, PNS_ITEMSET& aItems ) int PNS_NODE::RemoveByMarker( int aMarker ) int PNS_NODE::RemoveByMarker( int aMarker ) { { std::list<PNS_ITEM*> garbage; for( PNS_INDEX::ITEM_SET::iterator i = m_index->begin(); i != m_index->end(); ++i ) for( PNS_INDEX::ITEM_SET::iterator i = m_index->begin(); i != m_index->end(); ++i ) { { if ( (*i)->Marker() & aMarker ) if ( (*i)->Marker() & aMarker ) { { Remove( *i ); garbage.push_back( *i ); } } } for( std::list<PNS_ITEM*>::const_iterator i = garbage.begin(), end = garbage.end(); i != end; ++i ) { Remove( *i ); } } return 0; return 0; Loading