From 95252267ec7ba6508a03d6b4a170ca57e95e6ee7 Mon Sep 17 00:00:00 2001 From: Tomasz Wlostowski Date: Mon, 11 Jan 2016 13:37:00 -0500 Subject: [PATCH] Router: check layers of all traversed joints in FindLinesBetweenJoints(). (fixes lp:1531762) --- pcbnew/router/pns_node.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pcbnew/router/pns_node.cpp b/pcbnew/router/pns_node.cpp index b276b799a3..3f9bf12c87 100644 --- a/pcbnew/router/pns_node.cpp +++ b/pcbnew/router/pns_node.cpp @@ -885,6 +885,9 @@ int PNS_NODE::FindLinesBetweenJoints( PNS_JOINT& aA, PNS_JOINT& aB, std::vector< PNS_SEGMENT* seg = static_cast( item ); PNS_LINE line = AssembleLine( seg ); + if ( !line.Layers().Overlaps( aB.Layers() ) ) + continue; + PNS_JOINT j_start, j_end; FindLineEnds( line, j_start, j_end );