Commit 5f1c9060 authored by Tomasz Wlostowski's avatar Tomasz Wlostowski Committed by Wayne Stambaugh

P&S router: fix unguarded boost optional derefernce. (fixes lp:1427880)

parent b580ef70
...@@ -638,14 +638,17 @@ void PNS_DP_GATEWAYS::BuildGeneric( const VECTOR2I& p0_p, const VECTOR2I& p0_n, ...@@ -638,14 +638,17 @@ void PNS_DP_GATEWAYS::BuildGeneric( const VECTOR2I& p0_p, const VECTOR2I& p0_n,
// are on the same straight/diagonal line // are on the same straight/diagonal line
for( int k = 0; k < 2; k++ ) for( int k = 0; k < 2; k++ )
{ {
m = *ips[k]; if (ips[k] )
if( m && *m != p0_p && *m != p0_n )
{ {
int prio = ( padDist > padToGapThreshold * m_gap ? 10 : 20 ); const VECTOR2I m ( *ips[k] );
VECTOR2I g_p( ( p0_p - *m ).Resize( (double) m_gap * M_SQRT1_2 ) ); if( m != p0_p && m != p0_n )
VECTOR2I g_n( ( p0_n - *m ).Resize( (double) m_gap * M_SQRT1_2 ) ); {
int prio = ( padDist > padToGapThreshold * m_gap ? 10 : 20 );
m_gateways.push_back( PNS_DP_GATEWAY( *m + g_p, *m + g_n, k == 0 ? true : false, DIRECTION_45::ANG_OBTUSE, prio ) ); VECTOR2I g_p( ( p0_p - m ).Resize( (double) m_gap * M_SQRT1_2 ) );
VECTOR2I g_n( ( p0_n - m ).Resize( (double) m_gap * M_SQRT1_2 ) );
m_gateways.push_back( PNS_DP_GATEWAY( m + g_p, m + g_n, k == 0 ? true : false, DIRECTION_45::ANG_OBTUSE, prio ) );
}
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment