提交 b123f239 编写于 作者: R Rich Felker

fix getopt wrongly treating colons in optstring as valid option chars

the ':' in optstring has special meaning as a flag applying to the
previous option character, or to getopt's error handling behavior when
it appears at the beginning. don't also accept a "-:" option based on
its presence.
上级 82f17680
......@@ -77,7 +77,7 @@ int getopt(int argc, char * const argv[], const char *optstring)
if (l>0) i+=l; else i++;
} while (l && d != c);
if (d != c) {
if (d != c || c == ':') {
optopt = c;
if (optstring[0] != ':' && opterr)
__getopt_msg(argv[0], ": unrecognized option: ", optchar, k);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册