[PATCH 4/4] regedit: Use Unicode for registry key paths

Hugh McMaster hugh.mcmaster at outlook.com
Fri Jul 15 02:50:16 CDT 2016


Signed-off-by: Hugh McMaster <hugh.mcmaster at outlook.com>
---
 programs/regedit/regedit.rc | 2 +-
 programs/regedit/regproc.c  | 8 ++++++--
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/programs/regedit/regedit.rc b/programs/regedit/regedit.rc
index 9cbadb2..e33d2d3 100644
--- a/programs/regedit/regedit.rc
+++ b/programs/regedit/regedit.rc
@@ -370,7 +370,7 @@ STRINGTABLE
     STRING_UNKNOWN_DATA_FORMAT, "regedit: Unsupported registry data type [%1!u!]\n"
     STRING_UNEXPECTED_EOL, "regedit: Unexpected end of line in '%1'.\n"
     STRING_UNRECOGNIZED_LINE, "regedit: The line '%1' was not recognized.\n"
-    STRING_SETVALUE_FAILED, "regedit: Unable to add the registry value '%1' to '%2!S!'.\n"
+    STRING_SETVALUE_FAILED, "regedit: Unable to add the registry value '%1' to '%2'.\n"
     STRING_OPEN_KEY_FAILED, "regedit: Unable to open the registry key '%1'.\n"
     STRING_UNSUPPORTED_TYPE, "regedit: Unsupported registry data type [%1!u!] encountered in '%2'.\n"
     STRING_EXPORT_AS_BINARY, "regedit: The registry value '%1' will be exported as binary data.\n"
diff --git a/programs/regedit/regproc.c b/programs/regedit/regproc.c
index 55cb858..b44010a 100644
--- a/programs/regedit/regproc.c
+++ b/programs/regedit/regproc.c
@@ -336,7 +336,7 @@ static BOOL parseKeyName(LPWSTR lpKeyName, HKEY *hKey, LPWSTR *lpKeyPath)
 }
 
 /* Globals used by the setValue() & co */
-static LPSTR currentKeyName;
+static WCHAR *currentKeyName;
 static HKEY  currentKeyHandle = NULL;
 
 /******************************************************************************
@@ -447,7 +447,11 @@ static LONG openKeyW(WCHAR* stdInput)
                                                         REG_OPENED_EXISTING_KEY */
 
     if (res == ERROR_SUCCESS)
-        currentKeyName = GetMultiByteString(stdInput);
+    {
+        currentKeyName = HeapAlloc(GetProcessHeap(), 0, (strlenW(stdInput) + 1) * sizeof(WCHAR));
+        CHECK_ENOUGH_MEMORY(currentKeyName);
+        strcpyW(currentKeyName, stdInput);
+    }
     else
         currentKeyHandle = NULL;
 
-- 
2.7.4




More information about the wine-patches mailing list