diff --git a/src/psprint.c b/src/psprint.c index ce7ffbcf..44a30991 100644 --- a/src/psprint.c +++ b/src/psprint.c @@ -606,6 +606,11 @@ static void ps_drawarc(int gc, int fillarc, double x,double y,double r,double a, double x1, y1, x2, y2; double psdash; + if(b < 0.0) { + a = a + b; + b = -b; + } + xx=X_TO_PS(x); yy=Y_TO_PS(y); rr=r*xctx->mooz; diff --git a/src/svgdraw.c b/src/svgdraw.c index b8a9fe66..e45d76f5 100644 --- a/src/svgdraw.c +++ b/src/svgdraw.c @@ -237,6 +237,10 @@ static void svg_drawarc(int gc, int fillarc, double x,double y,double r,double a double xx1, yy1, xx2, yy2; int fs, fa; + if(b < 0.0) { + a = a + b; + b = -b; + } xx=X_TO_SCREEN(x); yy=Y_TO_SCREEN(y); rr=r*xctx->mooz;