Fix handling of dynamic state in GrAAFillRRectOp
Bug: skia: Change-Id: Id16684acc209aad943dae25d0077776e4b196453 Reviewed-on: https://skia-review.googlesource.com/c/171960 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
This commit is contained in:
parent
5369e1422f
commit
8fa1625b11
@ -476,13 +476,16 @@ void GrAAFillRRectOp::onExecute(GrOpFlushState* flushState, const SkRect& chainB
|
||||
initArgs.fCaps = &flushState->caps();
|
||||
initArgs.fResourceProvider = flushState->resourceProvider();
|
||||
initArgs.fDstProxy = flushState->drawOpArgs().fDstProxy;
|
||||
GrPipeline pipeline(initArgs, std::move(fProcessors), flushState->detachAppliedClip());
|
||||
auto clip = flushState->detachAppliedClip();
|
||||
GrPipeline::FixedDynamicState fixedDynamicState(clip.scissorState().rect());
|
||||
GrPipeline pipeline(initArgs, std::move(fProcessors), std::move(clip));
|
||||
|
||||
GrMesh mesh(GrPrimitiveType::kTriangles);
|
||||
mesh.setIndexedInstanced(indexBuffer.get(), SK_ARRAY_COUNT(kIndexData), fInstanceBuffer,
|
||||
fInstanceCount, fBaseInstance, GrPrimitiveRestart::kNo);
|
||||
mesh.setVertexData(vertexBuffer.get());
|
||||
flushState->rtCommandBuffer()->draw(proc, pipeline, nullptr, nullptr, &mesh, 1, this->bounds());
|
||||
flushState->rtCommandBuffer()->draw(proc, pipeline, &fixedDynamicState, nullptr, &mesh, 1,
|
||||
this->bounds());
|
||||
}
|
||||
|
||||
// Will the given corner look good if we use HW derivatives?
|
||||
|
Loading…
Reference in New Issue
Block a user