diff --git a/tests/TextBlobCacheTest.cpp b/tests/TextBlobCacheTest.cpp
index cf2a239..3a548c7 100644
--- a/tests/TextBlobCacheTest.cpp
+++ b/tests/TextBlobCacheTest.cpp
@@ -100,7 +100,7 @@
         SkAutoTUnref<SkFontStyleSet> set(fm->createStyleSet(i));
         for (int j = 0; j < set->count(); ++j) {
             SkFontStyle fs;
-            set->getStyle(j, &fs, NULL);
+            set->getStyle(j, &fs, nullptr);
 
             // We use a typeface which randomy returns unexpected mask formats to fuzz
             SkAutoTUnref<SkTypeface> orig(set->createTypeface(j));
@@ -124,7 +124,7 @@
                         const SkTextBlobBuilder::RunBuffer& run = builder.allocRun(paint,
                                                                                    maxTotalText,
                                                                                    0, 0,
-                                                                                   NULL);
+                                                                                   nullptr);
                         memcpy(run.glyphs, text.get(), maxTotalText * sizeof(uint16_t));
                     }
                 }
