Browse Source

fix getopt_long_only misinterpreting "--" as an option

Rich Felker 8 năm trước cách đây
mục cha
commit
b24f1d2520
1 tập tin đã thay đổi với 1 bổ sung1 xóa
  1. 1 1
      src/misc/getopt_long.c

+ 1 - 1
src/misc/getopt_long.c

@@ -53,7 +53,7 @@ static int __getopt_long_core(int argc, char *const *argv, const char *optstring
 {
 	optarg = 0;
 	if (longopts && argv[optind][0] == '-' &&
-		((longonly && argv[optind][1]) ||
+		((longonly && argv[optind][1] && argv[optind][1] != '-') ||
 		 (argv[optind][1] == '-' && argv[optind][2])))
 	{
 		int colon = optstring[optstring[0]=='+'||optstring[0]=='-']==':';