Commit 13b0784c authored by jean-pierre charras's avatar jean-pierre charras
Browse files

Fix overflow in track len calculations and display (Bug #1347878).

parent c1f11a1b
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -1878,10 +1878,10 @@ TRACK* BOARD::MarkTrace( TRACK* aTrace, int* aCount,
    }
    }


    if( aTraceLength )
    if( aTraceLength )
        *aTraceLength = KiROUND( full_len );
        *aTraceLength = full_len;


    if( aPadToDieLength )
    if( aPadToDieLength )
        *aPadToDieLength = KiROUND( lenPadToDie );
        *aPadToDieLength = lenPadToDie;


    if( aCount )
    if( aCount )
        *aCount = NbSegmBusy;
        *aCount = NbSegmBusy;
+1 −1
Original line number Original line Diff line number Diff line
@@ -1002,7 +1002,7 @@ void TRACK::GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList )
        double trackLen = 0;
        double trackLen = 0;
        double lenPadToDie = 0;
        double lenPadToDie = 0;
        board->MarkTrace( this, NULL, &trackLen, &lenPadToDie, false );
        board->MarkTrace( this, NULL, &trackLen, &lenPadToDie, false );
        msg = ::CoordinateToString( trackLen );
        msg = ::LengthDoubleToString( trackLen );
        aList.push_back( MSG_PANEL_ITEM( _( "Track Len" ), msg, DARKCYAN ) );
        aList.push_back( MSG_PANEL_ITEM( _( "Track Len" ), msg, DARKCYAN ) );


        if( lenPadToDie != 0 )
        if( lenPadToDie != 0 )