[cairo] Compilation errors with MSVC after recent changes to 'cairo-path-stroke-traps.c'
Victor Osipkov
11 at laserart.su
Sat Nov 8 00:27:11 PST 2014
John Emmas <johne53 <at> tiscali.co.uk> writes:
>
> Hi guys. Since updating form git master just now I can no longer
> compile cairo-path-stroke-traps.c with Microsoft VC8. I see around a
> dozen errors looking like this:-
>
> cairo-path-stroke-traps.c(302) : error C2440: 'initializing' :
> cannot convert from 'cairo_point_t' to 'cairo_fixed_t'
>
> The stated line (302) seems to be newly added and looks like this:-
>
> cairo_point_t t[] = { in->point, *inpt, *outpt };
>
> Similar errors are occurring at lines 303, 464 and 465. MSVC seems to
> be objecting to the array elements for some reason. I can't see an
> obvious problem but fortunately, all the newly added lines look quite
> similar (so hopefully that'll make it easy to fix!) Thanks.
>
> John
please try this fix:
} else {
// cairo_point_t t[] = { in->point, *inpt, *outpt }; vctos
cairo_point_t t[] = { {in->point.x, in->point.y}, {inpt->x, inpt->y},
{outpt->x, outpt->y} };
// cairo_point_t e[] = { in->cw, in->ccw, out->cw, out->ccw }; vctos
cairo_point_t e[] = { {in->cw.x, in->cw.y}, {in->ccw.x, in->ccw.y},
{out->cw.x, out->cw.y}, {out->ccw.x, out->ccw.y} };
_cairo_traps_tessellate_triangle_with_edges (stroker->traps, t, e);
}
****
case CAIRO_LINE_JOIN_BEVEL: {
// cairo_point_t t[] = { in->point, *inpt, *outpt }; // vctos
// cairo_point_t e[] = { in->cw, in->ccw, out->cw, out->ccw };
cairo_point_t t[] = { {in->point.x, in->point.y}, {inpt->x, inpt->y},
{outpt->x, outpt->y} };
cairo_point_t e[] = { {in->cw.x, in->cw.y}, {in->ccw.x, in->ccw.y},
{out->cw.x, out->cw.y}, {out->ccw.x, out->ccw.y} };
_cairo_traps_tessellate_triangle_with_edges (stroker->traps, t, e);
break;
}
More information about the cairo
mailing list