From: Daniel Stenberg Date: Fri, 6 Oct 2000 12:45:05 +0000 (+0000) Subject: corrected the --longoption parser X-Git-Tag: upstream/7.37.1~17565 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5b39a48e22b95d23aa1066cf98cc0ad5f62eba4e;p=platform%2Fupstream%2Fcurl.git corrected the --longoption parser --- diff --git a/src/main.c b/src/main.c index 7c16e8a..6b596c3 100644 --- a/src/main.c +++ b/src/main.c @@ -504,23 +504,26 @@ static int getparameter(char *flag, /* f or -long-flag */ if('-' == flag[0]) { /* try a long name */ int fnam=strlen(&flag[1]); + int numhits=0; for(j=0; j< sizeof(aliases)/sizeof(aliases[0]); j++) { if(strnequal(aliases[j].lname, &flag[1], fnam)) { longopt = TRUE; + numhits++; if(strequal(aliases[j].lname, &flag[1])) { parse = aliases[j].letter; hit = j; + numhits = 1; /* a single unique hit */ break; } - if(parse) { - /* this is the second match, we can't continue! */ - helpf("option --%s is ambiguous\n", &flag[1]); - return CURLE_FAILED_INIT; - } parse = aliases[j].letter; hit = j; } } + if(numhits>1) { + /* this is at least the second match! */ + helpf("option --%s is ambiguous\n", &flag[1]); + return CURLE_FAILED_INIT; + } if(hit < 0) { helpf("unknown option -%s.\n", flag); return CURLE_FAILED_INIT;