UINTN ReadTokenLine(IN REFIT_FILE *File, OUT CHAR16 ***TokenList)
{
BOOLEAN LineFinished, IsQuoted = FALSE;
- CHAR16 *Line, *Token, *p;
+ CHAR16 *Line, *Token, *p, *Temp;
UINTN TokenCount = 0;
*TokenList = NULL;
while (*p && *p != '"' && ((*p != ' ' && *p != '\t' && *p != '=' && *p != '#' && *p != ',') || IsQuoted)) {
if ((*p == '/') && !IsQuoted) // Switch Unix-style to DOS-style directory separators
*p = '\\';
+ if (*p == '|') {
+ Temp = StrDuplicate(&p[1]);
+ StrCpy(p, Temp);
+ }
p++;
} // if
if (*p == '"')
MyFreePool(GlobalConfig.DontScanDirs);
GlobalConfig.DontScanDirs = StrDuplicate(SelfDirPath);
MyFreePool(GlobalConfig.DontScanFiles);
- GlobalConfig.DontScanFiles = DONT_SCAN_FILES;
+ GlobalConfig.DontScanFiles = StrDuplicate(DONT_SCAN_FILES);
for (;;) {
TokenCount = ReadTokenLine(&File, &TokenList);