~cern-kicad/kicad/kicad-pns-tom

« back to all changes in this revision

Viewing changes to pcbnew/class_zone.cpp

Pcbnew: fix bug 1179877, due a bad default  copy constructor, after  my changes about CPOLYGONS_LIST class.
More about CPOLYGONS_LIST work.

Show diffs side-by-side

added added

removed removed

Lines of Context:
90
90
    m_PadConnection = aZone.m_PadConnection;
91
91
    m_ThermalReliefGap = aZone.m_ThermalReliefGap;
92
92
    m_ThermalReliefCopperBridge = aZone.m_ThermalReliefCopperBridge;
93
 
    m_FilledPolysList = aZone.m_FilledPolysList;
94
 
    m_FillSegmList = aZone.m_FillSegmList;
 
93
    m_FilledPolysList.Append( aZone.m_FilledPolysList );
 
94
    m_FillSegmList = aZone.m_FillSegmList;      // vector <> copy
95
95
 
96
96
    m_isKeepout = aZone.m_isKeepout;
97
97
    m_doNotAllowCopperPour = aZone.m_doNotAllowCopperPour;
123
123
    bool change = ( m_FilledPolysList.GetCornersCount() > 0 ) ||
124
124
                  ( m_FillSegmList.size() > 0 );
125
125
 
126
 
    m_FilledPolysList.clear();
 
126
    m_FilledPolysList.RemoveAllContours();
127
127
    m_FillSegmList.clear();
128
128
    m_IsFilled = false;
129
129
 
740
740
    for( unsigned ic = 0; ic < m_FilledPolysList.GetCornersCount(); ic++ )
741
741
    {
742
742
        m_FilledPolysList.SetX( ic, m_FilledPolysList.GetX( ic ) + offset.x );
743
 
        m_FilledPolysList.SetY( ic, m_FilledPolysList.GetX( ic ) + offset.y );
 
743
        m_FilledPolysList.SetY( ic, m_FilledPolysList.GetY( ic ) + offset.y );
744
744
    }
745
745
 
746
746
    for( unsigned ic = 0; ic < m_FillSegmList.size(); ic++ )
863
863
    m_Poly->SetHatchStyle( src->m_Poly->GetHatchStyle() );
864
864
    m_Poly->SetHatchPitch( src->m_Poly->GetHatchPitch() );
865
865
    m_Poly->m_HatchLines = src->m_Poly->m_HatchLines;   // Copy vector <CSegment>
866
 
    m_FilledPolysList.clear();
867
 
    m_FilledPolysList = src->m_FilledPolysList;
 
866
    m_FilledPolysList.RemoveAllContours();
 
867
    m_FilledPolysList.Append( src->m_FilledPolysList );
868
868
    m_FillSegmList.clear();
869
869
    m_FillSegmList = src->m_FillSegmList;
870
870
}