Commit Graph

739 Commits

Author SHA1 Message Date
Michael Stefaniuc a9987fa11a regedit: Remove a redundant NULL check before HeapFree().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-07 19:48:32 +02:00
Hugh McMaster e2ae9e3c58 regedit: Use a function to free the parser data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-07 19:48:32 +02:00
Hugh McMaster 6f24426692 regedit/tests: Test the effects of EOF on hex data during concatenation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-07 19:48:32 +02:00
Hugh McMaster 3908296237 regedit: Null-terminate REG_EXPAND_SZ and REG_MULTI_SZ data if the parsed hex data does not end in a null-terminating character.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-06 18:50:48 +02:00
Hugh McMaster 7b95ddcb04 regedit: Hex data lines may be terminated by a semicolon.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-06 18:50:48 +02:00
Hugh McMaster 23c93d3026 regedit/tests: Add some more tests for importing hex data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-06 18:50:48 +02:00
Hugh McMaster 3afa0e42c8 regedit/tests: Add another test for "0x" prefixes in the hex data type.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-06 18:50:47 +02:00
Hugh McMaster 499733f400 regedit/tests: Check if regedit.exe has elevated privileges before starting some tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-06 18:50:47 +02:00
Hugh McMaster b811b16694 regedit: Do not import the line if a hex data type has a "0x" prefix.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-05 18:21:37 +02:00
Hugh McMaster 1a4c3e5d28 regedit: Check if any hex data exists before attempting to parse it.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-05 18:21:18 +02:00
Hugh McMaster 5cc1b227b7 regedit: Do not remove lines beginning with a semicolon from the read buffer.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-05 18:21:10 +02:00
Nikolay Sivov d2697467b2 regedit: Remove commented out block.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-05 18:21:06 +02:00
Hugh McMaster 5d8a1283f2 regedit: Do not remove lines beginning with '#' from the read buffer.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-04 19:49:57 +02:00
Hugh McMaster e336c86359 regedit: Skip blank and whitespace-only lines during hex data concatenation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-04 19:49:49 +02:00
Hugh McMaster 6ffa89ebd3 regedit: Skip lines that do not begin with a hexadecimal character during hex data concatenation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-04 19:49:42 +02:00
Hugh McMaster 50caf838b6 regedit: Simplify a while loop for skipping whitespace.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-04 19:49:32 +02:00
Hugh McMaster 50fee455c4 regedit/tests: Test whether the "0x" prefix is valid when importing hex data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-04 19:49:25 +02:00
Hugh McMaster 506d4fd052 regedit/tests: Test whether registry keys ending with trailing backslashes are imported and created.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-04 19:49:21 +02:00
Hugh McMaster 032d32f940 regedit: Improve the parsing of multiline hex data during the registry import operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-03 15:57:44 +02:00
Hugh McMaster c750c2a98d regedit: Remove un-necessary parser state assignment if we are returning to the same state.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-03 15:57:44 +02:00
Hugh McMaster 2db2a7aeef regedit/tests: Test the effect of whitespace-only lines during hex data concatenation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-03 15:57:44 +02:00
Hugh McMaster 55d43d13e4 regedit/tests: Fix another incorrectly named registry key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-03 15:57:44 +02:00
Hugh McMaster 817cd2ac59 regedit/tests: Correct out of sequence test numbering.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-29 18:32:06 +02:00
Hugh McMaster a905b4d6ba regedit/tests: Test comma placement when parsing hex data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-29 18:32:06 +02:00
Nikolay Sivov f4e98d813f regedit: Remove explicit iIndent field initialization.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 18:24:14 +02:00
Nikolay Sivov b84f228805 regedit: Use notification message to clean up item data.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 18:24:11 +02:00
Hugh McMaster b25337e6d6 regedit: Free the binary data buffer after saving the new value (Coverity).
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 18:23:04 +02:00
Hugh McMaster ec0043f083 regedit/tests: Test whether EOF invalidates a hex data line ending in a backslash.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 19:13:54 +02:00
Hugh McMaster 82d3be8094 regedit/tests: Test whether a forward slash can be used as a concatenation marker.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 19:13:50 +02:00
Hugh McMaster 81fa517436 regedit/tests: Test the effects of comments and new lines that appear between valid hex data lines.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 19:13:48 +02:00
Hugh McMaster a9726d0b90 regedit/tests: Test whether a line beginning with a backslash can follow a line ending in a backslash.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 19:13:44 +02:00
Hugh McMaster a31f070ada regedit/tests: Test line concatenation with comments, new lines and comma variations before a new default registry value.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 19:13:41 +02:00
Hugh McMaster db9e4199e0 regedit/tests: Test line concatenation with comments, new lines and comma variations before a new registry value.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 19:13:38 +02:00
Hugh McMaster 82263293f6 regedit/tests: Test line concatenation with a new registry key on the next line.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 19:13:34 +02:00
Hugh McMaster 6b36ce329d regedit/tests: Test backslashes with whitespace variations and comma placement.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 19:13:32 +02:00
Hugh McMaster 73af2479c7 regedit/tests: Use the verify_key*() functions where possible.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 18:19:34 +02:00
Hugh McMaster f0e21863c9 regedit/tests: Use verify_key() for consistency with the verify_reg*() functions.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 18:19:32 +02:00
Hugh McMaster 758340a6e1 regedit: Free the buffer and reset data information on error and after setting the value.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 18:19:09 +02:00
Hugh McMaster a76ce84fce regedit/tests: Add tests to determine the effects of backslashes in hex data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-23 15:19:36 +02:00
Hugh McMaster a1b35b3bc4 regedit/tests: Add tests for parsing hex data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-22 19:25:16 +02:00
Hugh McMaster 4a70d33552 regedit: Display data for all values in the GUI.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-21 19:15:12 +02:00
Hugh McMaster 878a0a4e14 regedit: Display all registry data types in the GUI.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-21 19:15:12 +02:00
Hugh McMaster 8803b9616b regedit: Fail when parsing any hex data type that is greater than ULONG_MAX on Windows.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-21 19:15:12 +02:00
Hugh McMaster e3234f6ede regedit: Use a generic data type to correctly process all data types.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-20 18:43:30 +02:00
Hugh McMaster cb563dbac6 regedit: Re-insert the default value item after deleting its data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-16 15:25:38 +02:00
Hugh McMaster 7f76cf6c26 regedit: Use the correct mask flags with LVM_GETNEXTITEM.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-16 15:25:38 +02:00
Hugh McMaster 1f08ee2453 regedit: Allow the deletion of registry keys beginning with a lowercase 'H'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-16 15:25:38 +02:00
Hugh McMaster f535341d2b regedit: Use a case insensitive comparison when parsing registry classes from registry file versions 4 and 5.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-16 15:25:37 +02:00
Hugh McMaster 8504a1563d regedit: Free the memory used by the REG_DWORD and hex data types after saving the registry value.
We use a BOOL to handle all hex types, including those that are undefined (e.g.0x100).

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-16 15:25:37 +02:00
Hugh McMaster a1924ae2da regedit: Export hex data types without warning about unsupported data types.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-16 15:25:37 +02:00