guard rasterizer and drawlooper setters

Need to land https://codereview.chromium.org/1823513002/ first

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1821533002

Review URL: https://codereview.chromium.org/1821533002
diff --git a/samplecode/SamplePathEffects.cpp b/samplecode/SamplePathEffects.cpp
index 10715f3..1f9915d 100644
--- a/samplecode/SamplePathEffects.cpp
+++ b/samplecode/SamplePathEffects.cpp
@@ -152,7 +152,7 @@
         paint.setARGB(0xFF, 0, 0, 0);
         paint.setPathEffect(make_warp_pe(fPhase));
         TestRastBuilder testRastBuilder;
-        paint.setRasterizer(testRastBuilder.detachRasterizer())->unref();
+        paint.setRasterizer(testRastBuilder.detach());
         canvas->drawPath(fPath, paint);
     }