aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/effects
diff options
context:
space:
mode:
Diffstat (limited to 'src/effects')
-rw-r--r--src/effects/SkColorFilters.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/effects/SkColorFilters.cpp b/src/effects/SkColorFilters.cpp
index ba62817f56..8e10d73a0e 100644
--- a/src/effects/SkColorFilters.cpp
+++ b/src/effects/SkColorFilters.cpp
@@ -406,7 +406,13 @@ GrFragmentProcessor* ModeColorFilterEffect::TestCreate(SkRandom* rand,
while (SkXfermode::kDst_Mode == mode) {
mode = static_cast<SkXfermode::Mode>(rand->nextRangeU(0, SkXfermode::kLastCoeffMode));
}
- GrColor color = rand->nextU();
+
+ // pick a random premul color
+ uint8_t alpha = rand->nextULessThan(256);
+ GrColor color = GrColorPackRGBA(rand->nextRangeU(0, alpha),
+ rand->nextRangeU(0, alpha),
+ rand->nextRangeU(0, alpha),
+ alpha);
return ModeColorFilterEffect::Create(color, mode);
}