Andrew Nguyen : reg: Fix behavior when specifying the help flag.
Module: wine Branch: master Commit: a3dbe3cce1e45b66d98531434b5ce8c2df6dd4e6 URL: http://source.winehq.org/git/wine.git/?a=commit;h=a3dbe3cce1e45b66d98531434b... Author: Andrew Nguyen <arethusa26(a)gmail.com> Date: Sat Jun 27 17:45:26 2009 -0500 reg: Fix behavior when specifying the help flag. --- programs/reg/reg.c | 26 +++++++++++++++++++++----- 1 files changed, 21 insertions(+), 5 deletions(-) diff --git a/programs/reg/reg.c b/programs/reg/reg.c index fcb0969..aa9d440 100644 --- a/programs/reg/reg.c +++ b/programs/reg/reg.c @@ -357,11 +357,12 @@ int wmain(int argc, WCHAR *argvW[]) static const WCHAR slashVW[] = {'/','v',0}; static const WCHAR slashVAW[] = {'/','v','a',0}; static const WCHAR slashVEW[] = {'/','v','e',0}; + static const WCHAR slashHelpW[] = {'/','?',0}; - if (argc < 2) + if (argc < 2 || !lstrcmpW(argvW[1], slashHelpW)) { reg_message(STRING_USAGE); - return 1; + return 0; } if (!lstrcmpiW(argvW[1], addW)) @@ -371,9 +372,14 @@ int wmain(int argc, WCHAR *argvW[]) if (argc < 3) { - reg_message(STRING_ADD_USAGE); + reg_message(STRING_INVALID_CMDLINE); return 1; } + else if (argc == 3 && !lstrcmpW(argvW[2], slashHelpW)) + { + reg_message(STRING_ADD_USAGE); + return 0; + } key_name = argvW[2]; for (i = 1; i < argc; i++) @@ -401,9 +407,14 @@ int wmain(int argc, WCHAR *argvW[]) if (argc < 3) { - reg_message(STRING_DELETE_USAGE); + reg_message(STRING_INVALID_CMDLINE); return 1; } + else if (argc == 3 && !lstrcmpW(argvW[2], slashHelpW)) + { + reg_message(STRING_DELETE_USAGE); + return 0; + } key_name = argvW[2]; for (i = 1; i < argc; i++) @@ -426,9 +437,14 @@ int wmain(int argc, WCHAR *argvW[]) if (argc < 3) { - reg_message(STRING_QUERY_USAGE); + reg_message(STRING_INVALID_CMDLINE); return 1; } + else if (argc == 3 && !lstrcmpW(argvW[2], slashHelpW)) + { + reg_message(STRING_QUERY_USAGE); + return 0; + } key_name = argvW[2]; for (i = 1; i < argc; i++)
participants (1)
-
Alexandre Julliard