diff --git a/core/fpdfapi/fpdf_render/fpdf_render_text.cpp b/core/fpdfapi/fpdf_render/fpdf_render_text.cpp
index d8d416d..cc9c751 100644
--- a/core/fpdfapi/fpdf_render/fpdf_render_text.cpp
+++ b/core/fpdfapi/fpdf_render/fpdf_render_text.cpp
@@ -764,7 +764,7 @@
     pCache = CFX_GEModule::Get()->GetFontCache();
   }
   CFX_FaceCache* pFaceCache = pCache->GetCachedFace(&pFont->m_Font);
-  FX_FONTCACHE_DEFINE(pCache, &pFont->m_Font);
+  CFX_AutoFontCache autoFontCache(pCache, &pFont->m_Font);
   CPDF_CharPosList CharPosList;
   CharPosList.Load(textobj->m_nChars, textobj->m_pCharCodes,
                    textobj->m_pCharPos, pFont, font_size);
diff --git a/core/fxge/ge/fx_ge_text.cpp b/core/fxge/ge/fx_ge_text.cpp
index db86d65..c97b88e2 100644
--- a/core/fxge/ge/fx_ge_text.cpp
+++ b/core/fxge/ge/fx_ge_text.cpp
@@ -479,7 +479,7 @@
     pCache = CFX_GEModule::Get()->GetFontCache();
 
   CFX_FaceCache* pFaceCache = pCache->GetCachedFace(pFont);
-  FX_FONTCACHE_DEFINE(pCache, pFont);
+  CFX_AutoFontCache autoFontCache(pCache, pFont);
   std::vector<FXTEXT_GLYPHPOS> glyphs(nChars);
   CFX_Matrix matrixCTM = GetCTM();
   FX_FLOAT scale_x = FXSYS_fabs(matrixCTM.a);
@@ -634,7 +634,7 @@
     pCache = CFX_GEModule::Get()->GetFontCache();
 
   CFX_FaceCache* pFaceCache = pCache->GetCachedFace(pFont);
-  FX_FONTCACHE_DEFINE(pCache, pFont);
+  CFX_AutoFontCache autoFontCache(pCache, pFont);
   for (int iChar = 0; iChar < nChars; iChar++) {
     const FXTEXT_CHARPOS& charpos = pCharPos[iChar];
     CFX_Matrix matrix;
diff --git a/core/fxge/include/fx_font.h b/core/fxge/include/fx_font.h
index 9b43f16..817a9d1 100644
--- a/core/fxge/include/fx_font.h
+++ b/core/fxge/include/fx_font.h
@@ -504,8 +504,6 @@
   CFX_Font* m_pFont;
 };
 
-#define FX_FONTCACHE_DEFINE(pFontCache, pFont) \
-  CFX_AutoFontCache autoFontCache((pFontCache), (pFont))
 class CFX_GlyphBitmap {
  public:
   int m_Top;
