diff --git a/pcbnew/router/pns_shove.cpp b/pcbnew/router/pns_shove.cpp index 5af8bc70c6..60c367a3b5 100644 --- a/pcbnew/router/pns_shove.cpp +++ b/pcbnew/router/pns_shove.cpp @@ -608,6 +608,10 @@ SHOVE::SHOVE_STATUS SHOVE::pushVia( VIA* aVia, const VECTOR2I& aForce, int aCurr if( jt->IsLocked() ) return SH_INCOMPLETE; + // nothing to push... + if ( aForce.x == 0 && aForce.y == 0 ) + return SH_OK; + while( aForce.x != 0 || aForce.y != 0 ) { JOINT* jt_next = m_currentNode->FindJoint( p0_pushed, aVia );