update for cache updates



git-svn-id: http://skia.googlecode.com/svn/trunk@202 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/effects/SkGradientShader.cpp b/src/effects/SkGradientShader.cpp
index 047c482..696def6 100644
--- a/src/effects/SkGradientShader.cpp
+++ b/src/effects/SkGradientShader.cpp
@@ -130,7 +130,7 @@
     const SkPMColor*    getCache32();
 
     // called when we kill our cached colors (to be rebuilt later on demand)
-    virtual void onCacheReset() {}
+    virtual void onCacheReset()  = 0;
 
 private:
     enum {
@@ -635,7 +635,9 @@
     }
 
 protected:
-    Linear_Gradient(SkFlattenableReadBuffer& buffer) : Gradient_Shader(buffer) {};
+    Linear_Gradient(SkFlattenableReadBuffer& buffer) : Gradient_Shader(buffer) {
+        fCachedBitmap = NULL;
+    }
     virtual Factory getFactory() { return CreateProc; }
 
 private:
@@ -1181,6 +1183,7 @@
 protected:
     Radial_Gradient(SkFlattenableReadBuffer& buffer) : Gradient_Shader(buffer) {};
     virtual Factory getFactory() { return CreateProc; }
+    virtual void onCacheReset() {}
 
 private:
     typedef Gradient_Shader INHERITED;
@@ -1205,8 +1208,8 @@
 
 protected:
     Sweep_Gradient(SkFlattenableReadBuffer& buffer) : Gradient_Shader(buffer) {}
-
     virtual Factory getFactory() { return CreateProc; }
+    virtual void onCacheReset() {}
 
 private:
     typedef Gradient_Shader INHERITED;