[v5 03/12] reg.exe: Add REG_MULTI_SZ tests for reg add

Stefan Dösinger stefandoesinger at gmail.com
Mon Oct 20 09:42:21 CDT 2014


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 2014-10-17 20:38, schrieb Jonathan Vollebregt:
> +    /* REG_MULTI_SZ */
> +    run_reg_exe("reg add HKCU\\" KEY_BASE " /v multi0 /t REG_MULTI_SZ /d \"three\\0little\\0strings\" /f", &r);
> +    ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r);
> +    memcpy(buffer, "three", 6);
> +    memcpy(buffer+6, "little", 7);
> +    memcpy(buffer+6+7, "strings", 8);
> +    buffer[21] = 0;
> +    verify_reg(hkey, "multi0", REG_MULTI_SZ, buffer, 22, TODO_REG_SIZE);
I think this shoudl work as well:
const char buffer[] = "three\0little\0strings\0";

verify_reg(hkey, "multi0", REG_MULTI_SZ, buffer, sizeof(buffer), TODO_REG_SIZE);

Notice the [] to declare an array so sizeof returns the proper value. strlen will not work.

> +    run_reg_exe("reg add HKCU\\" KEY_BASE " /t REG_MULTI_SZ /v multi4 /s \"#randomgibberish\" /d \"three#little#strings\" /f", &r);
> +    todo_wine ok(r == REG_EXIT_FAILURE, "got exit code %d, expected 1\n", r);
> +    run_reg_exe("reg add HKCU\\" KEY_BASE " /t REG_MULTI_SZ /v multi4 /s \"\" /d \"three#little#strings\" /f", &r);
> +    todo_wine ok(r == REG_EXIT_FAILURE, "got exit code %d, expected 1\n", r);
> +    run_reg_exe("reg add HKCU\\" KEY_BASE " /t REG_MULTI_SZ /v multi4 /s \"#\" /d \"##\" /f", &r);
> +    todo_wine ok(r == REG_EXIT_FAILURE, "got exit code %d, expected 1\n", r);
> +    run_reg_exe("reg add HKCU\\" KEY_BASE " /t REG_MULTI_SZ /v multi4 /s \"#\" /d \"two##strings\" /f", &r);
> +    todo_wine ok(r == REG_EXIT_FAILURE, "got exit code %d, expected 1\n", r);
> +    run_reg_exe("reg add HKCU\\" KEY_BASE " /t REG_MULTI_SZ /v multi4 /s \"#\" /d \"#a\" /f", &r);
> +    todo_wine ok(r == REG_EXIT_FAILURE, "got exit code %d, expected 1\n", r);
What about the following cases?

/s ABC /d threeABClittleABCstrings
/s \\0 /d three\\0little\\0strings

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJURR9NAAoJEN0/YqbEcdMw/6UP/Rs7diy+TUkZDbJq2x3JyZYZ
c+YK2Z9PoWNs3oTvwvVtaxrVqSX1y0fVnGEpNixGEMbo5fae7/rm9fN5WqvI+1FW
RWG0ViCpJ4EduNVhORtHmMGzhqQAAGlfuEF0fthSshynaD8MirwPMW5LzBVTK/A8
zhI0wvveQElhscEoYtaZOkuI5WZzzKnjGpuGtserx31B41ClASEpR/MiU4XJD78p
OvqaPotzlbQermrte9B+ZWcxjjVyrsM2fToVbXMNhtBDyDy17uG1Lpr8lQrXL85J
uFYpVFiYoRf7CCHrhY2Gx8H7AsHwc8W0LDlnvlIKk6yRWnzyQuSzQJVbFNzBAy9u
wBlQ6kZjMJzvaGCk9el5MXiwgN6Vs2bHa3j/8qvrzQyaGNebiZA7QLaXUXOqXpb6
De6/ev8iyTD1cyFwVootQBAsb40HKBk24ZwmP0sp+j3seJUlzR37ve/R71avexWL
uheZ9Xj5xeBm0G3JJQ3C0cxUYo+f22t9gDLbKtOa+5BcRskjtmgHjEHEzZs33T8F
BcXhGtAyL99XwXh73ILHg321pjkTu1sWzd9ILigVz6mYmOJzZp/L4Azy6E3W/U7j
GHkT46Ag7/aUN4BTR5MieySdFtAQ9pbdYI1FRMBINie2Ny9AC71UrDYtFpNQuzaN
C4BbMES4ZXNJQuGSHs33
=iJxu
-----END PGP SIGNATURE-----



More information about the wine-devel mailing list