I believe just the division is unsigned with those changes. The multiplication will still be signed.
On Jan 2, 2012, at 2:58 PM, Emanuele Giaquinta wrote: > Due to C arithmetic conversion rules we must use an unsigned constant (or a > cast) to perform the multiplication using unsigned arithmetic. > --- > src/Color.c | 6 +++--- > 1 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/src/Color.c b/src/Color.c > index 9c76e58..23ef800 100644 > --- a/src/Color.c > +++ b/src/Color.c > @@ -85,8 +85,8 @@ XRenderParseColor(Display *dpy, char *spec, XRenderColor > *def) > def->blue = coreColor.blue; > def->alpha = 0xffff; > } > - def->red = (def->red * def->alpha) / 65535; > - def->green = (def->green * def->alpha) / 65535; > - def->blue = (def->blue * def->alpha) / 65535; > + def->red = (def->red * def->alpha) / 0xffffU; > + def->green = (def->green * def->alpha) / 0xffffU; > + def->blue = (def->blue * def->alpha) / 0xffffU; > return 1; > } > -- > 1.7.7.3 > _______________________________________________ > [email protected]: X.Org development > Archives: http://lists.x.org/archives/xorg-devel > Info: http://lists.x.org/mailman/listinfo/xorg-devel > _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
