Revert of factories should return baseclass, allowing the impl to specialize (patchse...
authorschenney <schenney@chromium.org>
Tue, 6 Oct 2015 19:59:55 +0000 (12:59 -0700)
committerCommit bot <commit-bot@chromium.org>
Tue, 6 Oct 2015 19:59:55 +0000 (12:59 -0700)
commit95376a0dde3cdf414eb97a20cef3af19ed7e0151
treeb304b560eec5feed75d621c1aa3ec9a7df2573d9
parentccb88bcab03c2d7450b25f614b9203b8b9d7640d
Revert of factories should return baseclass, allowing the impl to specialize (patchset #4 id:60001 of https://codereview.chromium.org/1390523005/ )

Reason for revert:
Breaks Chrome with this link error: ../../third_party/skia/include/effects/SkMorphologyImageFilter.h:75: error: undefined reference to 'SkMorphologyImageFilter::SkMorphologyImageFilter(int, int, SkImageFilter*, SkImageFilter::CropRect const*)'
../../third_party/skia/include/effects/SkMorphologyImageFilter.h:104: error: undefined reference to 'SkMorphologyImageFilter::SkMorphologyImageFilter(int, int, SkImageFilter*, SkImageFilter::CropRect const*)'

Presumably due to code in third_party/WebKit/Source/platform/graphics/filters/FEMorphology.cpp that contains:
#include "SkMorphologyImageFilter.h"

...

    if (m_type == FEMORPHOLOGY_OPERATOR_DILATE)
        return adoptRef(SkDilateImageFilter::Create(radiusX, radiusY, input.get(), &rect));
    return adoptRef(SkErodeImageFilter::Create(radiusX, radiusY, input.get(), &rect));

Original issue's description:
> factories should return baseclass, allowing the impl to specialize
>
> waiting on https://codereview.chromium.org/1386163002/# to land
>
> BUG=skia:4424
>
> Committed: https://skia.googlesource.com/skia/+/80a6dcaa1b757826ed7414f64b035d512d9ccbf8

TBR=senorblanco@google.com,robertphillips@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4424

Review URL: https://codereview.chromium.org/1389063002
18 files changed:
bench/MorphologyBench.cpp
gm/bigtileimagefilter.cpp
gm/filterfastbounds.cpp
gm/pictureimagefilter.cpp
include/effects/SkBlurImageFilter.h
include/effects/SkDropShadowImageFilter.h
include/effects/SkMergeImageFilter.h
include/effects/SkMorphologyImageFilter.h
include/effects/SkOffsetImageFilter.h
include/effects/SkPictureImageFilter.h
include/effects/SkPixelXorXfermode.h
include/effects/SkRectShaderImageFilter.h
include/effects/SkTableMaskFilter.h
include/effects/SkTestImageFilters.h
include/effects/SkTileImageFilter.h
src/effects/SkRectShaderImageFilter.cpp
src/effects/SkTileImageFilter.cpp
tests/ImageFilterTest.cpp