memset(desc->header(), 0, kHeaderSize);
}
// write the key length
- *desc->atOffset<uint32_t, kLengthOffset>() = newKeyLength;
+ *desc->atOffset<uint32_t, kLengthOffset>() = SkToU32(newKeyLength);
KeyHeader* header = desc->header();
EffectKey* effectKeys = desc->effectKeys();
header->fHasVertexCode = true;
}
- bool covIsSolidWhite = !requiresCoverageAttrib && 0xffffffff == drawState.getCoverage();
+ bool covIsSolidWhite = !requiresCoverageAttrib && 0xffffffff == drawState.getCoverageColor();
if (skipCoverage) {
header->fCoverageInput = kTransBlack_ColorInput;
// Here we deal with whether/how we handle color and coverage separately.
- // Set these defaults and then possibly change our mind if there is coverage.
- header->fDiscardIfZeroCoverage = false;
+ // Set this default and then possibly change our mind if there is coverage.
header->fCoverageOutput = kModulate_CoverageOutput;
// If we do have coverage determine whether it matters.
if (!drawState.isCoverageDrawing() && !skipCoverage &&
(drawState.numCoverageStages() > 0 || requiresCoverageAttrib)) {
- // If we're stenciling then we want to discard samples that have zero coverage
- if (drawState.getStencil().doesWrite()) {
- header->fDiscardIfZeroCoverage = true;
- separateCoverageFromColor = true;
- }
-
if (gpu->caps()->dualSourceBlendingSupport() &&
!(blendOpts & (GrDrawState::kEmitCoverage_BlendOptFlag |
GrDrawState::kCoverageAsAlpha_BlendOptFlag))) {