Just went and got the latest cvs and now the breakup works as advertised. Thanks.
Jeff wd4nmq DJ Delorie wrote: > Fixed. The problem wasn't that the pads disappeared, they were > created on the wrong layer. I checked in the attached patch, give it > a try. > > Index: buffer.c > =================================================================== > RCS file: /cvsroot/pcb/pcb/src/buffer.c,v > retrieving revision 1.45 > diff -p -U3 -r1.45 buffer.c > --- buffer.c 4 Jan 2008 20:37:18 -0000 1.45 > +++ buffer.c 30 Sep 2008 02:15:56 -0000 > @@ -591,7 +591,7 @@ SmashBufferElement (BufferTypePtr Buffer > { > ElementTypePtr element; > Cardinal group; > - LayerTypePtr layer; > + LayerTypePtr clayer, slayer; > > if (Buffer->Data->ElementN != 1) > { > @@ -634,11 +634,17 @@ SmashBufferElement (BufferTypePtr Buffer > GetLayerGroupNumberByNumber (max_layer + > (SWAP_IDENT ? SOLDER_LAYER : > COMPONENT_LAYER)); > - layer = &Buffer->Data->Layer[PCB->LayerGroups.Entries[group][0]]; > + clayer = &Buffer->Data->Layer[PCB->LayerGroups.Entries[group][0]]; > + group = > + GetLayerGroupNumberByNumber (max_layer + > + (SWAP_IDENT ? COMPONENT_LAYER : > + SOLDER_LAYER)); > + slayer = &Buffer->Data->Layer[PCB->LayerGroups.Entries[group][0]]; > PAD_LOOP (element); > { > LineTypePtr line; > - line = CreateNewLineOnLayer (layer, pad->Point1.X, pad->Point1.Y, > + line = CreateNewLineOnLayer (TEST_FLAG (ONSOLDERFLAG, pad) ? slayer : > clayer, > + pad->Point1.X, pad->Point1.Y, > pad->Point2.X, pad->Point2.Y, > pad->Thickness, pad->Clearance, NoFlags ()); > if (line) > > > _______________________________________________ > geda-user mailing list > geda-user@moria.seul.org > http://www.seul.org/cgi-bin/mailman/listinfo/geda-user > > _______________________________________________ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user