regedit: Correctly parse key name containing ']' when deleting/exporting.

This commit is contained in:
Lei Zhang 2007-03-01 16:34:42 -08:00 committed by Alexandre Julliard
parent 054fd8cb42
commit 4de636208f
1 changed files with 9 additions and 5 deletions

View File

@ -449,12 +449,16 @@ LPSTR getRegKeyName(LPSTR lpLine)
keyNameBeg = strchr(lpLineCopy, '\\'); /* The key name start by '\' */
if (keyNameBeg) {
LPSTR keyNameEnd;
keyNameBeg++; /* is not part of the name */
keyNameEnd = strrchr(lpLineCopy, ']');
if (keyNameEnd) {
*keyNameEnd = '\0'; /* remove ']' from the key name */
if (lpLine[0] == '[') /* need to find matching ']' */
{
LPSTR keyNameEnd;
keyNameEnd = strrchr(lpLineCopy, ']');
if (keyNameEnd) {
*keyNameEnd = '\0'; /* remove ']' from the key name */
}
}
} else {
keyNameBeg = lpLineCopy + strlen(lpLineCopy); /* branch - empty string */