[REGEDIT] Fix importing very big *.reg files (HEX values commonly) (#618)
authorGetequ <Getequ@users.noreply.github.com>
Fri, 22 Jun 2018 18:15:12 +0000 (01:15 +0700)
committerHermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Fri, 22 Jun 2018 18:15:12 +0000 (20:15 +0200)
This bug was found when I tried to import *.reg with huge HEX value (about 500 and much more lines of hex text).

base/applications/regedit/regproc.c

index 8d09bb3..c17221d 100644 (file)
@@ -851,9 +851,15 @@ static void processRegLinesW(FILE *in)
                 if(*s_eol == '\r' && *(s_eol+1) == '\n')
                     NextLine++;
 
-                while(*(NextLine+1) == ' ' || *(NextLine+1) == '\t')
+                while(isspaceW(*NextLine))
                     NextLine++;
 
+                if (!*NextLine)
+                {
+                    s = NextLine;
+                    break;
+                }
+
                 MoveMemory(s_eol - 1, NextLine, (CharsInBuf - (NextLine - s) + 1)*sizeof(WCHAR));
                 CharsInBuf -= NextLine - s_eol + 1;
                 s_eol = 0;