Nikolay Sivov : regedit: Remove unnecessary string conversion when modifying REG_DWORD value.

Alexandre Julliard julliard at winehq.org
Fri Jun 24 15:44:23 CDT 2022


Module: wine
Branch: master
Commit: 208f631ceec2fe6f25075030c7a2364360e181bb
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=208f631ceec2fe6f25075030c7a2364360e181bb

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Fri Jun 24 01:53:09 2022 +0300

regedit: Remove unnecessary string conversion when modifying REG_DWORD value.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>

---

 programs/regedit/edit.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/programs/regedit/edit.c b/programs/regedit/edit.c
index e18b6ca5846..c19ef1506fa 100644
--- a/programs/regedit/edit.c
+++ b/programs/regedit/edit.c
@@ -284,16 +284,16 @@ BOOL ModifyValue(HWND hwnd, HKEY hKeyRoot, LPCWSTR keyPath, LPCWSTR valueName)
         DWORD value = *((DWORD*)stringValueData);
         stringValueData = heap_xrealloc(stringValueData, 64);
         wsprintfW(stringValueData, L"%x", value);
-	if (DialogBoxW(0, MAKEINTRESOURCEW(IDD_EDIT_DWORD), hwnd, modify_dlgproc) == IDOK) {
-	    DWORD val;
-	    CHAR* valueA = GetMultiByteString(stringValueData);
-	    if (sscanf(valueA, isDecimal ? "%lu" : "%lx", &val)) {
-		lRet = RegSetValueExW(hKey, valueName, 0, type, (BYTE*)&val, sizeof(val));
-		if (lRet == ERROR_SUCCESS) result = TRUE;
+        if (DialogBoxW(0, MAKEINTRESOURCEW(IDD_EDIT_DWORD), hwnd, modify_dlgproc) == IDOK)
+        {
+            DWORD val;
+            if (swscanf(stringValueData, isDecimal ? L"%lu" : L"%lx", &val))
+            {
+                lRet = RegSetValueExW(hKey, valueName, 0, type, (BYTE*)&val, sizeof(val));
+                if (lRet == ERROR_SUCCESS) result = TRUE;
                 else error_code_messagebox(hwnd, IDS_SET_VALUE_FAILED);
-	    }
-	    heap_free(valueA);
-	}
+            }
+        }
     } else if ( type == REG_QWORD ) {
         UINT64 value = *((UINT64 *)stringValueData);
         stringValueData = heap_xrealloc(stringValueData, 64);




More information about the wine-cvs mailing list