update NeedsDeepCopy

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

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14736 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/core/SkPaintPriv.cpp b/src/core/SkPaintPriv.cpp
index 8021f7d..a8b52e9 100644
--- a/src/core/SkPaintPriv.cpp
+++ b/src/core/SkPaintPriv.cpp
@@ -79,20 +79,19 @@
 
 bool NeedsDeepCopy(const SkPaint& paint) {
     /*
-     *  These fields are known to be immutable, and so can be shallow-copied
+     *  The types below are not yet immutable/reentrant-safe, and so we return
+     *  true if instances of them are present in the paint.
      *
-     *  getTypeface()
-     *  getAnnotation()
-     *  paint.getColorFilter()
-     *  getXfermode()
-     *  getPathEffect()
-     *  getMaskFilter()
+     *  Eventually we hope this list will be empty, and we can always return
+     *  false.
      */
-
-    return paint.getShader() ||
-#ifdef SK_SUPPORT_LEGACY_LAYERRASTERIZER_API
-           paint.getRasterizer() ||
+    return false
+#ifdef SK_SUPPORT_LEGACY_SHADER_LOCALMATRIX
+           || paint.getShader()
 #endif
-           paint.getLooper() || // needs to hide its addLayer...
-           paint.getImageFilter();
+#ifdef SK_SUPPORT_LEGACY_LAYERRASTERIZER_API
+           || paint.getRasterizer()
+#endif
+           || paint.getImageFilter()
+           ;
 }