Loading eeschema/class_netlist_object.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -81,7 +81,7 @@ void NETLIST_OBJECT::Show( std::ostream& out, int ndx ) out << " <start " << m_Start << "/> <end " << m_End << "/>\n"; if( m_Label ) if( !m_Label.IsEmpty() ) out << " <label>" << m_Label.mb_str() << "</label>\n"; if( m_Comp ) Loading eeschema/erc.cpp +19 −15 Original line number Diff line number Diff line Loading @@ -174,8 +174,11 @@ static int MinimalReq[PIN_NMAX][PIN_NMAX] = /** Function TestDuplicateSheetNames( ) * inside a given sheet, one cannot have sheets with duplicate names (file * names can be duplicated). * @return the error count * @param aCreateMarker: true = create error markers in schematic, * false = calculate error count only */ int TestDuplicateSheetNames() int TestDuplicateSheetNames(bool aCreateMarker) { int err_count = 0; EDA_ScreenList ScreenList; // Created the list of screen Loading @@ -202,6 +205,8 @@ int TestDuplicateSheetNames() if( ( (SCH_SHEET*) ref_item )->m_SheetName.CmpNoCase( ( ( SCH_SHEET* ) item_to_test )-> m_SheetName ) == 0 ) { if( aCreateMarker ) { /* Create a new marker type ERC error*/ SCH_MARKER* Marker = new SCH_MARKER(); Loading @@ -214,6 +219,7 @@ int TestDuplicateSheetNames() Marker->SetErrorLevel( ERR ); Marker->SetNext( Screen->EEDrawList ); Screen->EEDrawList = Marker; } err_count++; } } Loading Loading @@ -279,9 +285,8 @@ void DIALOG_ERC::TestErc( wxArrayString* aMessagesList ) * inside a given sheet, one cannot have sheets with duplicate names (file * names can be duplicated). */ int errcnt = TestDuplicateSheetNames(); int errcnt = TestDuplicateSheetNames( true ); g_EESchemaVar.NbErrorErc += errcnt; g_EESchemaVar.NbWarningErc += errcnt; m_Parent->BuildNetListBase(); Loading @@ -290,7 +295,6 @@ void DIALOG_ERC::TestErc( wxArrayString* aMessagesList ) for( unsigned ii = 0; ii < g_NetObjectslist.size(); ii++ ) g_NetObjectslist[ii]->m_FlagOfConnection = UNCONNECTED; StartNet = OldItem = 0; NetNbItems = 0; MinConn = NOC; Loading eeschema/netlist_control.cpp +9 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,8 @@ #include "protos.h" #include "netlist_control.h" //Imported function: int TestDuplicateSheetNames(bool aCreateMarker); // ID for configuration: #define CUSTOM_NETLIST_TITLE wxT( "CustomNetlistTitle" ) Loading Loading @@ -492,6 +494,13 @@ void WinEDA_NetlistFrame::GenNetlist( wxCommandEvent& event ) return; } // Test duplicate sheet names: if( TestDuplicateSheetNames(false ) > 0 ) { if( !IsOK( this, _( "Error: duplicate sheet names. Continue?" ) ) ) return; } /* Cleanup the entire hierarchy */ EDA_ScreenList ScreenList; for( SCH_SCREEN* screen = ScreenList.GetFirst(); Loading pcbnew/zones_convert_brd_items_to_polygons.cpp +3 −2 Original line number Diff line number Diff line Loading @@ -216,11 +216,12 @@ void ZONE_CONTAINER::AddClearanceAreasPolygonsToPolysList( BOARD* aPcb ) have_poly_to_substract = false; D_PAD dummyPad((MODULE*)NULL); D_PAD * nextpad; for( MODULE* module = aPcb->m_Modules; module; module = module->Next() ) { for( D_PAD* pad = module->m_Pads; pad != NULL; pad = pad->Next() ) for( D_PAD* pad = module->m_Pads; pad != NULL; pad = nextpad ) { nextpad = pad->Next(); // pad pointer can be modified by next code, so calculate the next pad here if( !pad->IsOnLayer( GetLayer() ) ) { /* Test fo pads that are on top or bottom only and have a hole. * There are curious pads but they can be used for some components that are inside the Loading Loading
eeschema/class_netlist_object.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -81,7 +81,7 @@ void NETLIST_OBJECT::Show( std::ostream& out, int ndx ) out << " <start " << m_Start << "/> <end " << m_End << "/>\n"; if( m_Label ) if( !m_Label.IsEmpty() ) out << " <label>" << m_Label.mb_str() << "</label>\n"; if( m_Comp ) Loading
eeschema/erc.cpp +19 −15 Original line number Diff line number Diff line Loading @@ -174,8 +174,11 @@ static int MinimalReq[PIN_NMAX][PIN_NMAX] = /** Function TestDuplicateSheetNames( ) * inside a given sheet, one cannot have sheets with duplicate names (file * names can be duplicated). * @return the error count * @param aCreateMarker: true = create error markers in schematic, * false = calculate error count only */ int TestDuplicateSheetNames() int TestDuplicateSheetNames(bool aCreateMarker) { int err_count = 0; EDA_ScreenList ScreenList; // Created the list of screen Loading @@ -202,6 +205,8 @@ int TestDuplicateSheetNames() if( ( (SCH_SHEET*) ref_item )->m_SheetName.CmpNoCase( ( ( SCH_SHEET* ) item_to_test )-> m_SheetName ) == 0 ) { if( aCreateMarker ) { /* Create a new marker type ERC error*/ SCH_MARKER* Marker = new SCH_MARKER(); Loading @@ -214,6 +219,7 @@ int TestDuplicateSheetNames() Marker->SetErrorLevel( ERR ); Marker->SetNext( Screen->EEDrawList ); Screen->EEDrawList = Marker; } err_count++; } } Loading Loading @@ -279,9 +285,8 @@ void DIALOG_ERC::TestErc( wxArrayString* aMessagesList ) * inside a given sheet, one cannot have sheets with duplicate names (file * names can be duplicated). */ int errcnt = TestDuplicateSheetNames(); int errcnt = TestDuplicateSheetNames( true ); g_EESchemaVar.NbErrorErc += errcnt; g_EESchemaVar.NbWarningErc += errcnt; m_Parent->BuildNetListBase(); Loading @@ -290,7 +295,6 @@ void DIALOG_ERC::TestErc( wxArrayString* aMessagesList ) for( unsigned ii = 0; ii < g_NetObjectslist.size(); ii++ ) g_NetObjectslist[ii]->m_FlagOfConnection = UNCONNECTED; StartNet = OldItem = 0; NetNbItems = 0; MinConn = NOC; Loading
eeschema/netlist_control.cpp +9 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,8 @@ #include "protos.h" #include "netlist_control.h" //Imported function: int TestDuplicateSheetNames(bool aCreateMarker); // ID for configuration: #define CUSTOM_NETLIST_TITLE wxT( "CustomNetlistTitle" ) Loading Loading @@ -492,6 +494,13 @@ void WinEDA_NetlistFrame::GenNetlist( wxCommandEvent& event ) return; } // Test duplicate sheet names: if( TestDuplicateSheetNames(false ) > 0 ) { if( !IsOK( this, _( "Error: duplicate sheet names. Continue?" ) ) ) return; } /* Cleanup the entire hierarchy */ EDA_ScreenList ScreenList; for( SCH_SCREEN* screen = ScreenList.GetFirst(); Loading
pcbnew/zones_convert_brd_items_to_polygons.cpp +3 −2 Original line number Diff line number Diff line Loading @@ -216,11 +216,12 @@ void ZONE_CONTAINER::AddClearanceAreasPolygonsToPolysList( BOARD* aPcb ) have_poly_to_substract = false; D_PAD dummyPad((MODULE*)NULL); D_PAD * nextpad; for( MODULE* module = aPcb->m_Modules; module; module = module->Next() ) { for( D_PAD* pad = module->m_Pads; pad != NULL; pad = pad->Next() ) for( D_PAD* pad = module->m_Pads; pad != NULL; pad = nextpad ) { nextpad = pad->Next(); // pad pointer can be modified by next code, so calculate the next pad here if( !pad->IsOnLayer( GetLayer() ) ) { /* Test fo pads that are on top or bottom only and have a hole. * There are curious pads but they can be used for some components that are inside the Loading