pcbnew: remove bug in block delete zone (crashes pcbnew)

This commit is contained in:
CHARRAS 2007-11-29 11:13:16 +00:00
parent 62e68c3aa3
commit cea3f06a9d
4 changed files with 12 additions and 7 deletions

View File

@ -4,6 +4,11 @@ Started 2007-June-11
Please add newer entries at the top, list the date and your name with
email address.
2007-Nov-29 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
+pcbnew:
Removed a bug (function block() ) which crashes pcbnew when erasing a zone by block delete
2007-Nov-27 UPDATE Dick Hollenbeck <dick@softplc.com>
================================================================================

View File

@ -36,7 +36,7 @@ in kicad-dev:
lines to edit:
STD_INSTALL = 1
which can be (see comments in libs.linux)
STD_INSTALL = 1
STD_INSTALL = 0 (or 2)
after libs.linux edition:
run make -f makefile.gtk

View File

@ -5,7 +5,7 @@
COMMON_GLOBL wxString g_BuildVersion
#ifdef EDA_BASE
(wxT("(2007-11-19)"))
(wxT("(2007-11-29)"))
#endif
;

View File

@ -565,17 +565,17 @@ void WinEDA_BasePcbFrame::Block_Delete( wxDC* DC )
/* Effacement des Zones */
if( Block_Include_Zones )
{
TRACK* pt_segm;
SEGZONE* pt_segm, *NextSegZ;
Affiche_Message( _( "Delete zones" ) );
for( pt_segm = m_Pcb->m_Zone; pt_segm != NULL; pt_segm = (TRACK*) NextS )
for( pt_segm = m_Pcb->m_Zone; pt_segm != NULL; pt_segm = NextSegZ )
{
NextS = pt_segm->Next();
NextSegZ = pt_segm->Next();
if( IsSegmentInBox( GetScreen()->BlockLocate, pt_segm ) )
{
/* la piste est ici bonne a etre efface */
/* The segment zone is in the block: delete it */
pt_segm->Draw( DrawPanel, DC, GR_XOR );
PtStruct->DeleteStructure();
pt_segm->DeleteStructure();
}
}
}