commit d9d177d

chld  ·  2026-04-14 01:36:55 +0000 UTC
parent 6970a96
why did i check i+1 after using it? but add chdir check
1 files changed,  +8, -5
+8, -5
 1@@ -237,8 +237,6 @@ main(int argc, char **argv)
 2 			usage(stdout, argv[0]);
 3 			return 0;
 4 		} else if (strcmp(argv[i], "-C")==0) {
 5-		  chdir(argv[i+1]);
 6-
 7 		  if(i+1 <= argc) {
 8 		    ++i;
 9 		  } else {
10@@ -246,10 +244,12 @@ main(int argc, char **argv)
11 		    usage(stderr, argv[0]);
12 		    return 1;
13 		  }
14-		} else if (strcmp(argv[i], "-f")==0) {
15-		  path=argv[i+1];
16-		  ++i;
17 
18+		  if (chdir(argv[i+1]) != 0) {
19+		    fprintf("failed to chdir to %s", argv[i+1]);
20+		    return 1;
21+		  }
22+		} else if (strcmp(argv[i], "-f")==0) {
23 		  if(i+1 <= argc) {
24 		    ++i;
25 		  } else {
26@@ -257,6 +257,9 @@ main(int argc, char **argv)
27 		    usage(stderr, argv[0]);
28 		    return 1;
29 		  }
30+
31+		  path=argv[i+1];
32+		  ++i;
33 		} else if (argv[i][0] == '-') {
34 			usage(stderr, argv[0]);
35 			return 1;