Commit Graph

100 Commits

Author SHA1 Message Date
Hugh McMaster 73f60910e4 reg: Handle a special case for Default values and 'reg query'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-21 23:36:05 +09:00
Hugh McMaster 2885170057 reg: Free szValue after deleting all registry values (Coverity).
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:22:05 +09:00
Hugh McMaster ecdd3c8e84 reg: Always output the long key name when printing strings.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 17:11:53 +09:00
Hugh McMaster 4a22ba5b46 reg: Parse the registry key using a helper function.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 17:11:53 +09:00
Hugh McMaster 7d962327b1 reg: Avoid possible out-of-bounds memory access when a switch is only a forward slash or hyphen.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-09 18:26:43 +09:00
Hugh McMaster f426ece3a1 reg: Recognise switches beginning with a forward slash or hyphen.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:35:18 +09:00
Hugh McMaster 31efcc634a reg: Do not allow duplicate /d or /t switches.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:34:34 +09:00
Hugh McMaster 17d606a3b9 reg: Move duplicate /v, /ve and /va combination checks to wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:45 +09:00
Hugh McMaster 0f7bdf7d57 reg: Remove an unreachable 'else' pathway from wmain.
Invalid operations are handled earlier in wmain.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:44 +09:00
Hugh McMaster 7484c5eba3 reg: Combine duplicate 'for' loops in wmain and parse all remaining arguments.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:44 +09:00
Hugh McMaster f1bf0bfbc3 reg: Move duplicate strchrW() calls to wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:44 +09:00
Hugh McMaster c0d9908558 reg: Rename HKEY 'subkey' to 'key' in reg_add() and reg_delete().
This better reflects the purpose of the HKEY.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 19:51:44 +09:00
Hugh McMaster ee71883964 reg: Move duplicate path_get_rootkey() calls to wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:39 +09:00
Hugh McMaster d57ad7b054 reg: Move duplicate sane_path() calls to wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:37 +09:00
Hugh McMaster 2864105ef5 reg: Make help for registry operations common in wmain.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:35 +09:00
Hugh McMaster 45acfd9b50 reg: Simplify help logic and syntax.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:33 +09:00
Hugh McMaster 33d657f55c reg: Exit with an error if the specified operation is invalid.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:31 +09:00
Hugh McMaster 6a927ef70c reg: Parse the registry operation using an enum.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:29 +09:00
Hugh McMaster 6ce8524271 reg: Recognise hyphen and forward slash help switches.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:48:27 +09:00
Hugh McMaster deaad0f90a reg: Inform users about the 'add/delete/query /?' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 22:32:04 +09:00
Hugh McMaster 2b77d24f0f reg: Update general help logic.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 22:28:49 +09:00
Hugh McMaster ccbbb92888 reg: Avoid using strlenW to check if a string is valid.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 22:17:58 +09:00
Hugh McMaster 7b9a1a355f reg: Output line break before displaying query output.
This matches Windows' behaviour.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-04 01:03:29 +09:00
Hugh McMaster 43875a7fae reg: Output the number of matches when querying the registry recursively.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-04 01:03:29 +09:00
Hugh McMaster dd5da0ae64 reg: Support recursion when querying a registry value.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-27 12:42:41 +09:00
Hugh McMaster 0c0d839aaa reg: Add /v and /ve support to reg query.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-25 22:10:09 +09:00
Hugh McMaster c81b0494ba reg: Support recursion when querying a registry key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-25 22:10:09 +09:00
Sebastian Lackner 7c774e9849 reg: Fix a heap corruption when printing specific REG_MULTI_SZ values.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-25 18:48:13 +09:00
Hugh McMaster 6433fee87e reg: Output the data value when querying a registry key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 21:04:37 +09:00
Hugh McMaster bde6d0490e reg: Correctly output the default value name when querying the registry.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 21:04:37 +09:00
Hugh McMaster 9042759767 reg: Output the value name and type via a separate function.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 21:04:37 +09:00
Hugh McMaster a9b76d0057 reg: Output the value type when querying a registry key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 21:04:37 +09:00
Hugh McMaster 2bd12424c9 reg: Output a list of subkeys when querying a registry key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 21:04:37 +09:00
Hugh McMaster 3035599ad8 reg: Output value names when querying a registry key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 21:04:37 +09:00
Hugh McMaster 3f62729b6e reg: Add initial 'query' support.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 21:04:36 +09:00
Hugh McMaster dad56c7dc6 reg: Exit with an error message if RegQueryInfoKeyW fails.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 00:59:56 +09:00
Hugh McMaster 31f0d95283 reg: Clean-up and inform the user if RegDeleteValueW fails when deleting all values in a registry key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-05 00:06:41 +09:00
Hugh McMaster ead76c7e47 reg: Allow values to be added, deleted or modified in root keys.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 00:36:28 +09:00
Hugh McMaster bd278b1983 reg: Fail if multiple /v switches are passed in.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 21:44:33 +09:00
Hugh McMaster 735dca6074 reg: Fail if /v is passed without an argument.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 21:42:50 +09:00
Hugh McMaster 84eed4cf22 reg: Correctly handle cases with no data argument.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 19:15:42 +09:00
Hugh McMaster 3762c294d9 reg: Fail if REG_DWORD_BIG_ENDIAN is passed with no data argument.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 18:42:10 +09:00
Hugh McMaster 9bfddcf76f reg: Correctly handle /ve commands with no data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 18:42:09 +09:00
Hugh McMaster 8220a32e0a reg: Display the default value name when ask_confirm() is passed "" for reg_info.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 23:31:47 +09:00
Hugh McMaster 81a030b934 reg: Delete the default registry value instead of overwriting it.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 23:31:44 +09:00
Hugh McMaster a573f237d0 reg: Fail if the data for REG_MULTI_SZ begins with a separator.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 17:45:01 +09:00
Hugh McMaster afa5251b10 reg: Fail if the data for REG_MULTI_SZ contains two adjacent separators.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 17:44:59 +09:00
Hugh McMaster b57b998354 reg: Ignore the slash zero character sequence if a custom separator is specified.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-25 21:59:42 +09:00
Hugh McMaster 47b2238b3d reg: Add support for REG_MULTI_SZ.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-25 00:25:01 +09:00
Hugh McMaster 3c7b7ece37 reg: Fail if the data value passed with REG_DWORD will cause an overflow.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:21 +09:00