From: mtklein Date: Fri, 22 Jul 2016 14:35:08 +0000 (-0700) Subject: Fix SW sRGB dst + LCD coverage bug. X-Git-Tag: accepted/tizen/5.0/unified/20181102.025319~116^2~653 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d01a8f470f43b50feb26cc73db89809e292feee2;p=platform%2Fupstream%2FlibSkiaSharp.git Fix SW sRGB dst + LCD coverage bug. We're using the linear procs for sRGB destintations and the sRGB procs for linear destinations. Fix that. C.f. State32::getLCDProc(), which flags |= kDstIsSRGB_LCDFlag. kDistIsSRGB is (1<<2) == 4, so the sRGB procs must be 4-7, not 0-3. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2177493002 Review-Url: https://codereview.chromium.org/2177493002 --- diff --git a/src/core/SkXfermode4f.cpp b/src/core/SkXfermode4f.cpp index 87a12a7..1a9b58e 100644 --- a/src/core/SkXfermode4f.cpp +++ b/src/core/SkXfermode4f.cpp @@ -464,11 +464,11 @@ SkXfermode::LCD32Proc SkXfermode::GetLCD32Proc(uint32_t flags) { flags &= 7; const LCD32Proc procs[] = { - srcover_n_lcd, src_n_lcd, - srcover_1_lcd, src_1_lcd, - srcover_n_lcd, src_n_lcd, srcover_1_lcd, src_1_lcd, + + srcover_n_lcd, src_n_lcd, + srcover_1_lcd, src_1_lcd, }; return procs[flags]; }