Browse Source

Do not draw circles of 0 radius

Apparently calling wxDC::DrawEllipse() with parameters resulting in a
circle with radius equal to 0 lead to printing problems.

Fixes: lp:1746210
* https://bugs.launchpad.net/kicad/+bug/1746210
pull/5/merge
Maciej Suminski 8 years ago
parent
commit
f0adf81a99
  1. 4
      common/gr_basic.cpp

4
common/gr_basic.cpp

@ -849,7 +849,7 @@ static bool clipCircle( EDA_RECT* aClipBox, int xc, int yc, int r, int aWidth )
void GRCircle( EDA_RECT* ClipBox, wxDC* DC, int xc, int yc, int r, int width, COLOR4D Color )
{
if( clipCircle( ClipBox, xc, yc, r, width ) )
if( clipCircle( ClipBox, xc, yc, r, width ) || r <= 0 )
return;
GRSetBrush( DC, Color, NOT_FILLED );
@ -873,7 +873,7 @@ void GRCircle( EDA_RECT* aClipBox, wxDC* aDC, wxPoint aPos, int aRadius, int aWi
void GRFilledCircle( EDA_RECT* ClipBox, wxDC* DC, int x, int y, int r,
int width, COLOR4D Color, COLOR4D BgColor )
{
if( clipCircle( ClipBox, x, y, r, width ) )
if( clipCircle( ClipBox, x, y, r, width ) || r <= 0 )
return;
GRSetBrush( DC, BgColor, FILLED );

Loading…
Cancel
Save