Module: wine Branch: master Commit: 9db3444e4070025162a87cce49ca7fe9ef44ce56 URL: http://source.winehq.org/git/wine.git/?a=commit;h=9db3444e4070025162a87cce49...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Nov 24 17:36:53 2015 +0900
explorer: Treat unrecognized options as a file to open.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
programs/explorer/explorer.c | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-)
diff --git a/programs/explorer/explorer.c b/programs/explorer/explorer.c index 4f82ded..c178017 100644 --- a/programs/explorer/explorer.c +++ b/programs/explorer/explorer.c @@ -683,12 +683,11 @@ static void parse_command_line(LPWSTR commandline,parameters_struct *parameters) static const WCHAR arg_select[] = {'/','s','e','l','e','c','t',','}; static const WCHAR arg_desktop[] = {'/','d','e','s','k','t','o','p'};
- LPWSTR p, p2; + LPWSTR p = commandline;
- p2 = commandline; - p = strchrW(commandline,'/'); - while(p) + while (*p) { + while (isspaceW(*p)) p++; if (strncmpW(p, arg_n, sizeof(arg_n)/sizeof(WCHAR))==0) { parameters->explorer_mode = FALSE; @@ -717,15 +716,12 @@ static void parse_command_line(LPWSTR commandline,parameters_struct *parameters) p += sizeof(arg_desktop)/sizeof(WCHAR); manage_desktop( p ); /* the rest of the command line is handled by desktop mode */ } - else p++; - - p2 = p; - p = strchrW(p,'/'); - } - if (p2 && *p2) - { - /* left over command line is generally the path to be opened */ - copy_path_string(parameters->root,p2); + else + { + /* left over command line is generally the path to be opened */ + copy_path_string(parameters->root,p); + break; + } } }