| Index: src/core/SkDraw.cpp
|
| diff --git a/src/core/SkDraw.cpp b/src/core/SkDraw.cpp
|
| index 8557a5190bdf29c15bfc9a6629ae59b438613e85..2d142cf1e5d214e83ac7662ab97e8a50ed964d16 100644
|
| --- a/src/core/SkDraw.cpp
|
| +++ b/src/core/SkDraw.cpp
|
| @@ -988,24 +988,11 @@ static bool xfermodeSupportsCoverageAsAlpha(SkXfermode* xfer) {
|
| }
|
| }
|
|
|
| -bool SkDrawTreatAsHairline(const SkPaint& paint, const SkMatrix& matrix,
|
| - SkScalar* coverage) {
|
| - SkASSERT(coverage);
|
| - if (SkPaint::kStroke_Style != paint.getStyle()) {
|
| - return false;
|
| - }
|
| - SkScalar strokeWidth = paint.getStrokeWidth();
|
| - if (0 == strokeWidth) {
|
| - *coverage = SK_Scalar1;
|
| - return true;
|
| - }
|
| +bool SkDrawTreatAAStrokeAsHairline(SkScalar strokeWidth, const SkMatrix& matrix,
|
| + SkScalar* coverage) {
|
| + SkASSERT(strokeWidth > 0);
|
| + // We need to try to fake a thick-stroke with a modulated hairline.
|
|
|
| - // if we get here, we need to try to fake a thick-stroke with a modulated
|
| - // hairline
|
| -
|
| - if (!paint.isAntiAlias()) {
|
| - return false;
|
| - }
|
| if (matrix.hasPerspective()) {
|
| return false;
|
| }
|
| @@ -1017,7 +1004,9 @@ bool SkDrawTreatAsHairline(const SkPaint& paint, const SkMatrix& matrix,
|
| SkScalar len0 = fast_len(dst[0]);
|
| SkScalar len1 = fast_len(dst[1]);
|
| if (len0 <= SK_Scalar1 && len1 <= SK_Scalar1) {
|
| - *coverage = SkScalarAve(len0, len1);
|
| + if (NULL != coverage) {
|
| + *coverage = SkScalarAve(len0, len1);
|
| + }
|
| return true;
|
| }
|
| return false;
|
|
|