Commit 1c2b9669 authored by Hugh McMaster's avatar Hugh McMaster Committed by Alexandre Julliard

reg/tests: Try importing registry files with escaped null characters.

parent aa98e3f6
......@@ -1574,22 +1574,22 @@ static void test_import(void)
verify_reg(hkey, "Wine68h", REG_BINARY, NULL, 0, 0);
verify_reg(hkey, "Wine68i", REG_NONE, NULL, 0, 0);
/* Test with embedded null characters */
/* Test with escaped null characters */
test_import_str("REGEDIT4\n\n"
"[HKEY_CURRENT_USER\\" KEY_BASE "]\n"
"\"Wine69a\"=\"\\0\n"
"\"Wine69b\"=\"\\0\\0\n"
"\"Wine69c\"=\"Value1\\0\n"
"\"Wine69d\"=\"Value2\\0\\0\\0\\0\n"
"\"Wine69e\"=\"Value3\\0Value4\n"
"\"Wine69f\"=\"\\0Value5\n\n", &r);
"\"Wine69a\"=\"\\\\0\"\n"
"\"Wine69b\"=\"\\\\0\\\\0\"\n"
"\"Wine69c\"=\"Value1\\\\0\"\n"
"\"Wine69d\"=\"Value2\\\\0\\\\0\\\\0\\\\0\"\n"
"\"Wine69e\"=\"Value3\\\\0Value4\"\n"
"\"Wine69f\"=\"\\\\0Value5\"\n\n", &r);
ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r);
verify_reg_nonexist(hkey, "Wine69a");
verify_reg_nonexist(hkey, "Wine69b");
verify_reg_nonexist(hkey, "Wine69c");
verify_reg_nonexist(hkey, "Wine69d");
verify_reg_nonexist(hkey, "Wine69e");
verify_reg_nonexist(hkey, "Wine69f");
verify_reg(hkey, "Wine69a", REG_SZ, "\\0", 3, 0);
verify_reg(hkey, "Wine69b", REG_SZ, "\\0\\0", 5, 0);
verify_reg(hkey, "Wine69c", REG_SZ, "Value1\\0", 9, 0);
verify_reg(hkey, "Wine69d", REG_SZ, "Value2\\0\\0\\0\\0", 15, 0);
verify_reg(hkey, "Wine69e", REG_SZ, "Value3\\0Value4", 15, 0);
verify_reg(hkey, "Wine69f", REG_SZ, "\\0Value5", 9, 0);
test_import_str("REGEDIT4\n\n"
"[HKEY_CURRENT_USER\\" KEY_BASE "]\n"
......@@ -3126,19 +3126,19 @@ static void test_unicode_import(void)
/* Test with embedded null characters */
test_import_wstr("\xef\xbb\xbfWindows Registry Editor Version 5.00\n\n"
"[HKEY_CURRENT_USER\\" KEY_BASE "]\n"
"\"Wine69a\"=\"\\0\n"
"\"Wine69b\"=\"\\0\\0\n"
"\"Wine69c\"=\"Value1\\0\n"
"\"Wine69d\"=\"Value2\\0\\0\\0\\0\n"
"\"Wine69e\"=\"Value3\\0Value4\n"
"\"Wine69f\"=\"\\0Value5\n\n", &r);
"\"Wine69a\"=\"\\\\0\"\n"
"\"Wine69b\"=\"\\\\0\\\\0\"\n"
"\"Wine69c\"=\"Value1\\\\0\"\n"
"\"Wine69d\"=\"Value2\\\\0\\\\0\\\\0\\\\0\"\n"
"\"Wine69e\"=\"Value3\\\\0Value4\"\n"
"\"Wine69f\"=\"\\\\0Value5\"\n\n", &r);
ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r);
verify_reg_nonexist(hkey, "Wine69a");
verify_reg_nonexist(hkey, "Wine69b");
verify_reg_nonexist(hkey, "Wine69c");
verify_reg_nonexist(hkey, "Wine69d");
verify_reg_nonexist(hkey, "Wine69e");
verify_reg_nonexist(hkey, "Wine69f");
verify_reg(hkey, "Wine69a", REG_SZ, "\\0", 3, 0);
verify_reg(hkey, "Wine69b", REG_SZ, "\\0\\0", 5, 0);
verify_reg(hkey, "Wine69c", REG_SZ, "Value1\\0", 9, 0);
verify_reg(hkey, "Wine69d", REG_SZ, "Value2\\0\\0\\0\\0", 15, 0);
verify_reg(hkey, "Wine69e", REG_SZ, "Value3\\0Value4", 15, 0);
verify_reg(hkey, "Wine69f", REG_SZ, "\\0Value5", 9, 0);
test_import_wstr("\xef\xbb\xbfWindows Registry Editor Version 5.00\n\n"
"[HKEY_CURRENT_USER\\" KEY_BASE "]\n"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment