Am 27.07.2016 04:39, schrieb Michel Dänzer: > On 26.07.2016 23:25, walter harms wrote: >> Am 26.07.2016 11:11, schrieb Michel Dänzer: >>> >>> diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c >>> index 9f93270..5b24ebb 100644 >>> --- a/hw/xfree86/modes/xf86RandR12.c >>> +++ b/hw/xfree86/modes/xf86RandR12.c >>> @@ -1313,6 +1313,116 @@ xf86RandR12CrtcGetGamma(ScreenPtr pScreen, >>> RRCrtcPtr randr_crtc) >>> return TRUE; >>> } >>> >>> +static void >>> +init_one_component(CARD16 *comp, unsigned size, unsigned shift, float >>> gamma) >>> +{ >>> + int i; >>> + >>> + if (gamma == 1.0) { >>> + for (i = 0; i < size; i++) >>> + comp[i] = i << shift; >>> + } else { >>> + for (i = 0; i < size; i++) >> I know it was not the the original source but to have a change to read this >> ... >> >> double a=(double) i / (double) (size - 1); >> double b=(double) (size - 1) * (1 << shift) //const >> double c= 1.0 / (double) gamma; //const >> >> comp[i] = (CARD16) (pow(a,c)*b); >> >> feel free to move the lines marked const out of the loop to be faster > > Would you like to send a follow-up patch and get proper credit for your > suggestion? :) >
You deserve all the credits, i would have to download the whole source, update programs ... :) re, wh _______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel