void GrBlurUtils::drawPathWithMaskFilter(GrContext* context, GrDrawContext* drawContext, const GrClip& clip, const SkPath& origPath, GrPaint* paint, const SkMatrix& viewMatrix, const SkMaskFilter* mf, const SkPathEffect* pathEffect, const GrStrokeInfo& origStrokeInfo, bool pathIsMutable) { SkPath* pathPtr = const_cast<SkPath*>(&origPath); SkTLazy<SkPath> tmpPath; GrStrokeInfo strokeInfo(origStrokeInfo); if (!strokeInfo.isDashed() && pathEffect && pathEffect->filterPath(tmpPath.init(), *pathPtr, &strokeInfo, nullptr)) { pathPtr = tmpPath.get(); pathPtr->setIsVolatile(true); pathIsMutable = true; pathEffect = nullptr; } draw_path_with_mask_filter(context, drawContext, clip, paint, viewMatrix, mf, pathEffect, strokeInfo, pathPtr, pathIsMutable); }
void GrBlurUtils::drawPathWithMaskFilter(GrContext* context, GrDrawContext* drawContext, const GrClip& clip, const SkPath& path, GrPaint* paint, const SkMatrix& viewMatrix, const SkMaskFilter* mf, const GrStyle& style, bool pathIsMutable) { draw_path_with_mask_filter(context, drawContext, clip, paint, viewMatrix, mf, style, &path, pathIsMutable); }