Fixed a bug which causes the PolyBezier to not be updated on redraw
(when you want them to be).
This commit is contained in:
parent
16c3cc27d1
commit
0f44fb362d
|
@ -1332,8 +1332,9 @@ static void X11DRV_Bezier(int level, DC * dc, POINT *Points,
|
||||||
X11DRV_PDEVICE *physDev = (X11DRV_PDEVICE *)dc->physDev;
|
X11DRV_PDEVICE *physDev = (X11DRV_PDEVICE *)dc->physDev;
|
||||||
|
|
||||||
if(*pIx == BEZMAXPOINTS){
|
if(*pIx == BEZMAXPOINTS){
|
||||||
TSXDrawLines( display, physDev->drawable, physDev->gc,
|
if (X11DRV_SetupGCForPen( dc ))
|
||||||
xpoints, *pIx, CoordModeOrigin );
|
TSXDrawLines( display, physDev->drawable, physDev->gc,
|
||||||
|
xpoints, *pIx, CoordModeOrigin );
|
||||||
*pIx=0;
|
*pIx=0;
|
||||||
}
|
}
|
||||||
if(!level || BezierCheck(level, Points)) {
|
if(!level || BezierCheck(level, Points)) {
|
||||||
|
@ -1406,7 +1407,8 @@ X11DRV_PolyBezier(DC *dc, POINT start, const POINT* BezierPoints, DWORD count)
|
||||||
X11DRV_Bezier(BEZIERMAXDEPTH , dc, Points, xpoints, &ix );
|
X11DRV_Bezier(BEZIERMAXDEPTH , dc, Points, xpoints, &ix );
|
||||||
count -=3;
|
count -=3;
|
||||||
}
|
}
|
||||||
if( ix) TSXDrawLines( display, physDev->drawable, physDev->gc,
|
if (ix && X11DRV_SetupGCForPen( dc ))
|
||||||
|
TSXDrawLines( display, physDev->drawable, physDev->gc,
|
||||||
xpoints, ix, CoordModeOrigin );
|
xpoints, ix, CoordModeOrigin );
|
||||||
free(xpoints);
|
free(xpoints);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
Loading…
Reference in New Issue