diff --git a/src/gamedata/stringtable.cpp b/src/gamedata/stringtable.cpp
index c3700cdf9..6fd78a703 100644
--- a/src/gamedata/stringtable.cpp
+++ b/src/gamedata/stringtable.cpp
@@ -193,7 +193,8 @@ bool FStringTable::readMacros(int lumpnum)
 
 bool FStringTable::ParseLanguageCSV(int lumpnum, const TArray<uint8_t> &buffer)
 {
-	if (memcmp(buffer.Data(), "default,", 8)) return false;
+	if (buffer.Size() < 11) return false;
+	if (strnicmp(buffer.Data(), "default,", 8) && strnicmp(buffer.Data(), "identifier,", 11 ) return false;
 	auto data = parseCSV(buffer);
 
 	int labelcol = -1;