summaryrefslogtreecommitdiffstats
path: root/src/ninja.cc
diff options
context:
space:
mode:
authorRui Ueyama <rui314@gmail.com>2013-05-21 18:27:59 (GMT)
committerRui Ueyama <rui314@gmail.com>2013-05-21 18:27:59 (GMT)
commitc3237b9411d40c1b85c9e2d54982b7f1a7b597f9 (patch)
treec686c102d4c83a37e1492345110c331b384abc07 /src/ninja.cc
parent5833ed8a0d2784a63cbeb5c8763b98538bff09df (diff)
downloadNinja-c3237b9411d40c1b85c9e2d54982b7f1a7b597f9.zip
Ninja-c3237b9411d40c1b85c9e2d54982b7f1a7b597f9.tar.gz
Ninja-c3237b9411d40c1b85c9e2d54982b7f1a7b597f9.tar.bz2
Add error check for -j flag.
Diffstat (limited to 'src/ninja.cc')
-rw-r--r--src/ninja.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/ninja.cc b/src/ninja.cc
index b4797ed..947e352 100644
--- a/src/ninja.cc
+++ b/src/ninja.cc
@@ -807,9 +807,14 @@ int NinjaMain(int argc, char** argv) {
case 'f':
input_file = optarg;
break;
- case 'j':
- config.parallelism = atoi(optarg);
+ case 'j': {
+ char* end;
+ int value = strtol(optarg, &end, 10);
+ if (*end != 0 || value <= 0)
+ Fatal("invalid -j parameter");
+ config.parallelism = value;
break;
+ }
case 'k': {
char* end;
int value = strtol(optarg, &end, 10);