diff --git a/win32ss/gdi/ntgdi/freetype.c b/win32ss/gdi/ntgdi/freetype.c index e7a6cee516e..5275b365761 100644 --- a/win32ss/gdi/ntgdi/freetype.c +++ b/win32ss/gdi/ntgdi/freetype.c @@ -266,16 +266,17 @@ RemoveCachedEntry(PFONT_CACHE_ENTRY Entry) static void RemoveCacheEntries(FT_Face Face) { - PLIST_ENTRY CurrentEntry; + PLIST_ENTRY CurrentEntry, NextEntry; PFONT_CACHE_ENTRY FontEntry; ASSERT_FREETYPE_LOCK_HELD(); - CurrentEntry = g_FontCacheListHead.Flink; - while (CurrentEntry != &g_FontCacheListHead) + for (CurrentEntry = g_FontCacheListHead.Flink; + CurrentEntry != &g_FontCacheListHead; + CurrentEntry = NextEntry) { FontEntry = CONTAINING_RECORD(CurrentEntry, FONT_CACHE_ENTRY, ListEntry); - CurrentEntry = CurrentEntry->Flink; + NextEntry = CurrentEntry->Flink; if (FontEntry->Face == Face) {