Module: wine Branch: master Commit: 948888b9502537c6b872c87a994542a92987e2d3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=948888b9502537c6b872c87a99...
Author: Hugh McMaster hugh.mcmaster@outlook.com Date: Tue Feb 16 17:12:07 2016 +1100
reg: Use strtoulW during conversion so we can set any value in the DWORD range.
Signed-off-by: Hugh McMaster hugh.mcmaster@outlook.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
programs/reg/reg.c | 2 +- programs/reg/tests/reg.c | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/programs/reg/reg.c b/programs/reg/reg.c index 7a66753..f676e77 100644 --- a/programs/reg/reg.c +++ b/programs/reg/reg.c @@ -243,7 +243,7 @@ static LPBYTE get_regdata(LPWSTR data, DWORD reg_type, WCHAR separator, DWORD *r { LPWSTR rest; DWORD val; - val = strtolW(data, &rest, 0); + val = strtoulW(data, &rest, 0); if (*rest) { output_message(STRING_MISSING_INTEGER); break; diff --git a/programs/reg/tests/reg.c b/programs/reg/tests/reg.c index 37fc40a..ba9fbed 100644 --- a/programs/reg/tests/reg.c +++ b/programs/reg/tests/reg.c @@ -281,8 +281,7 @@ static void test_add(void) run_reg_exe("reg add HKCU\" KEY_BASE " /v dword8 /t REG_dword /d 0xdeadbeef /f", &r); ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r); dword = 0xdeadbeef; - verify_reg(hkey, "dword8", REG_DWORD, &dword, sizeof(dword), - (sizeof(long) > sizeof(DWORD)) ? 0 : TODO_REG_DATA); + verify_reg(hkey, "dword8", REG_DWORD, &dword, sizeof(dword), 0);
run_reg_exe("reg add HKCU\" KEY_BASE " /t REG_DWORD /v dword9 /f /d -1", &r); todo_wine ok(r == REG_EXIT_FAILURE || broken(r == REG_EXIT_SUCCESS /* WinXP */), "got exit code %u\n", r); @@ -295,8 +294,7 @@ static void test_add(void) run_reg_exe("reg add HKCU\" KEY_BASE " /v dword12 /t REG_DWORD /d 0xffffffff /f", &r); ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r); dword = ~0u; - verify_reg(hkey, "dword12", REG_DWORD, &dword, sizeof(dword), - (sizeof(long) > sizeof(DWORD)) ? 0 : TODO_REG_DATA); + verify_reg(hkey, "dword12", REG_DWORD, &dword, sizeof(dword), 0);
run_reg_exe("reg add HKCU\" KEY_BASE " /v dword13 /t REG_DWORD /d 00x123 /f", &r); ok(r == REG_EXIT_FAILURE, "got exit code %d, expected 1\n", r);