/**\r
Compare whether two names of languages are identical.\r
\r
- @param Language1 Name of language 1\r
- @param Language2 Name of language 2\r
+ @param Language1 Name of language 1 from StringPackage\r
+ @param Language2 Name of language 2 to be compared with language 1.\r
\r
@retval TRUE same\r
@retval FALSE not same\r
IN CHAR8 *Language2\r
)\r
{\r
+ UINTN Index;\r
+\r
//\r
- // Porting Guide:\r
- // This library interface is simply obsolete.\r
- // Include the source code to user code.\r
+ // Compare the Primary Language in Language1 to Language2\r
//\r
- UINTN Index;\r
-\r
- for (Index = 0; (Language1[Index] != 0) && (Language2[Index] != 0); Index++) {\r
+ for (Index = 0; Language1[Index] != 0 && Language1[Index] != ';'; Index++) {\r
if (Language1[Index] != Language2[Index]) {\r
+ //\r
+ // Return FALSE if any characters are different.\r
+ //\r
return FALSE;\r
}\r
}\r
\r
- if (((Language1[Index] == 0) && (Language2[Index] == 0)) || \r
- ((Language1[Index] == 0) && (Language2[Index] != ';')) ||\r
- ((Language1[Index] == ';') && (Language2[Index] != 0)) ||\r
- ((Language1[Index] == ';') && (Language2[Index] != ';'))) {\r
- return TRUE;\r
- }\r
-\r
- return FALSE;\r
+ //\r
+ // Only return TRUE if Language2[Index] is a Null-terminator which means\r
+ // the Primary Language in Language1 is the same length as Language2. If\r
+ // Language2[Index] is not a Null-terminator, then Language2 is longer than\r
+ // the Primary Language in Language1, and FALSE must be returned.\r
+ //\r
+ return (Language2[Index] == 0);\r
}\r