Index: src/effects/SkColorFilters.cpp |
diff --git a/src/effects/SkColorFilters.cpp b/src/effects/SkColorFilters.cpp |
index ba62817f568beb7cee92aba584f5a2276e5e2442..8e10d73a0eea9239be37b36f682927d9ceeff7a8 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); |
} |