diff options
-rw-r--r-- | src/gpu/GrRenderTargetContext.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gpu/GrRenderTargetContext.cpp b/src/gpu/GrRenderTargetContext.cpp index b2b6e99e69..b6a9b5a78b 100644 --- a/src/gpu/GrRenderTargetContext.cpp +++ b/src/gpu/GrRenderTargetContext.cpp @@ -1305,7 +1305,14 @@ void GrRenderTargetContext::drawOval(const GrClip& clip, SkDEBUGCODE(this->validate();) GR_CREATE_TRACE_MARKER_CONTEXT("GrRenderTargetContext", "drawOval", fContext); + const SkStrokeRec& stroke = style.strokeRec(); + if (oval.isEmpty() && !style.pathEffect()) { + if (stroke.getStyle() == SkStrokeRec::kFill_Style) { + return; + } + + this->drawRect(clip, std::move(paint), aa, viewMatrix, oval, &style); return; } |