← Back to team overview

kicad-developers team mailing list archive

Re: Via Stitching

 

Hi Heikki,

Good catches, thank you for the report. Both issues should be already fixed.

Regards,
Orson

On 12/07/2016 01:11 PM, Heikki Pulkkinen wrote:
> Hi
> 
> Yesterday I do some work with Via Stitching cleanup. Cleanup Tracks and
> Vias has been changed quite much past two weeks. I found that
> deleteDanglingTracks() does not work right. It does not remove whole
> dangling trace, just only end tracks. I think, that it does not know other
> tracks than end tracks, because they do not been removed instantly as they
> do before. And that loop is running only ones. I think, that It needs some
> kind of whole trace test. Just adding:
> 
>                 /* keep iterating, because a track connected to the deleted
> track
>                  * now perhaps is not connected and should be deleted */
>                 tie( std::ignore, flag_erase ) = m_removed.insert( track );
>                 modified = true;
>                 item_erased = true;
> <------------------------------------------------------------------------------*
>             }
>         }
>     } while( item_erased );
> 
> 
> make it for ever loop.
> 
> 
> Another conflict is comparison of via type:
> 
> @@ -371,10 +383,15 @@ bool TRACKS_CLEANER::clean_vias()
> 
>          /* Important: these cleanups only do thru hole vias, they don't
>           * (yet) handle high density interconnects */
> -        if( via->GetViaType() != VIA_THROUGH )
> +        if( via->GetViaType() == VIA_THROUGH )
>          {
>              modified |= remove_duplicates_of_via( via );
> 
> 
> 
> 
> Cheers
> 
> Heikki


Attachment: signature.asc
Description: OpenPGP digital signature


References