Put SimpleOffsetFilter on heap.

Effects want to live on the heap!

BUG=skia:
R=senorblanco@chromium.org, dominikg@chromium.org, scroggo@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/203273002

git-svn-id: http://skia.googlecode.com/svn/trunk@13848 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gm/imagefiltersgraph.cpp b/gm/imagefiltersgraph.cpp
index 8885f0d..8390379 100644
--- a/gm/imagefiltersgraph.cpp
+++ b/gm/imagefiltersgraph.cpp
@@ -26,8 +26,9 @@
 // perform a draw and this one does.
 class SimpleOffsetFilter : public SkImageFilter {
 public:
-    SimpleOffsetFilter(SkScalar dx, SkScalar dy, SkImageFilter* input)
-    : SkImageFilter(input), fDX(dx), fDY(dy) {}
+    static SkImageFilter* Create(SkScalar dx, SkScalar dy, SkImageFilter* input) {
+        return SkNEW_ARGS(SimpleOffsetFilter, (dx, dy, input));
+    }
 
     virtual bool onFilterImage(Proxy* proxy, const SkBitmap& src, const Context& ctx,
                                SkBitmap* dst, SkIPoint* offset) const SK_OVERRIDE {
@@ -70,6 +71,9 @@
     }
 
 private:
+    SimpleOffsetFilter(SkScalar dx, SkScalar dy, SkImageFilter* input)
+    : SkImageFilter(input), fDX(dx), fDY(dy) {}
+
     SkScalar fDX, fDY;
 };
 
@@ -157,11 +161,12 @@
                                     0, 0, 0, 0.5f, 0 };
             SkAutoTUnref<SkColorMatrixFilter> matrixCF(SkColorMatrixFilter::Create(matrix));
             SkAutoTUnref<SkImageFilter> matrixFilter(SkColorFilterImageFilter::Create(matrixCF));
-            SimpleOffsetFilter offsetFilter(SkIntToScalar(10), SkIntToScalar(10), matrixFilter);
+            SkAutoTUnref<SkImageFilter> offsetFilter(
+                SimpleOffsetFilter::Create(10.0f, 10.f, matrixFilter));
 
             SkAutoTUnref<SkXfermode> arith(SkArithmeticMode::Create(0, SK_Scalar1, SK_Scalar1, 0));
             SkAutoTUnref<SkXfermodeImageFilter> arithFilter(
-                SkXfermodeImageFilter::Create(arith, matrixFilter, &offsetFilter));
+                SkXfermodeImageFilter::Create(arith, matrixFilter, offsetFilter));
 
             SkPaint paint;
             paint.setImageFilter(arithFilter);