From: Antony Dovgal Date: Mon, 23 Apr 2007 11:04:54 +0000 (+0000) Subject: fix long options X-Git-Tag: RELEASE_1_2_0~237 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=83d74b7488caecc960dd056e702e28113c7a313d;p=php fix long options --- diff --git a/sapi/cgi/getopt.c b/sapi/cgi/getopt.c index 0dd8a45f5b..4821a9c84d 100644 --- a/sapi/cgi/getopt.c +++ b/sapi/cgi/getopt.c @@ -145,7 +145,8 @@ int php_getopt(int argc, char* const *argv, const opt_struct opts[], char **opta } return opts[opts_idx].opt_char; } else { - if (arg_start >= 2) { + /* multiple options specified as one (exclude long opts) */ + if (arg_start >= 2 && !((argv[*optind][0] == '-') && (argv[*optind][1] == '-'))) { if (!argv[*optind][optchr+1]) { dash = 0; diff --git a/sapi/cli/getopt.c b/sapi/cli/getopt.c index 0dd8a45f5b..4821a9c84d 100644 --- a/sapi/cli/getopt.c +++ b/sapi/cli/getopt.c @@ -145,7 +145,8 @@ int php_getopt(int argc, char* const *argv, const opt_struct opts[], char **opta } return opts[opts_idx].opt_char; } else { - if (arg_start >= 2) { + /* multiple options specified as one (exclude long opts) */ + if (arg_start >= 2 && !((argv[*optind][0] == '-') && (argv[*optind][1] == '-'))) { if (!argv[*optind][optchr+1]) { dash = 0;