Convert back to 0-255 scale before storing linear bytes

TBR=mtklein@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2338203005

Review-Url: https://codereview.chromium.org/2338203005
This commit is contained in:
msarett 2016-09-14 10:23:03 -07:00 committed by Commit bot
parent a17411f056
commit 591971d02a

View File

@ -857,9 +857,9 @@ static inline void store_linear(void* dst, const uint32_t* src,
kRShift = 16;
}
dr = sk_clamp_0_255(dr);
dg = sk_clamp_0_255(dg);
db = sk_clamp_0_255(db);
dr = sk_clamp_0_255(255.0f * dr);
dg = sk_clamp_0_255(255.0f * dg);
db = sk_clamp_0_255(255.0f * db);
Sk4i da = Sk4i::Load(src) & 0xFF000000;
@ -874,7 +874,7 @@ template <SwapRB kSwapRB>
static inline void store_linear_1(void* dst, const uint32_t* src,
Sk4f& rgba, const Sk4f&,
const uint8_t* const[3]) {
rgba = sk_clamp_0_255(rgba);
rgba = sk_clamp_0_255(255.0f * rgba);
uint32_t tmp;
SkNx_cast<uint8_t>(Sk4f_round(rgba)).store(&tmp);