mirror of
https://github.com/leejet/stable-diffusion.cpp.git
synced 2026-09-24 20:20:37 +00:00
fix: handle invalid option numbers (#1961)
This commit is contained in:
parent
e95ab96997
commit
3191b23d4b
@ -302,7 +302,11 @@ bool parse_options(int argc, const char** argv, const std::vector<ArgOptions>& o
|
|||||||
invalid_arg = true;
|
invalid_arg = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
try {
|
||||||
*option.target = std::stoi(argv[i]);
|
*option.target = std::stoi(argv[i]);
|
||||||
|
} catch (const std::invalid_argument&) {
|
||||||
|
invalid_arg = true;
|
||||||
|
}
|
||||||
found_arg = true;
|
found_arg = true;
|
||||||
}))
|
}))
|
||||||
break;
|
break;
|
||||||
@ -312,7 +316,11 @@ bool parse_options(int argc, const char** argv, const std::vector<ArgOptions>& o
|
|||||||
invalid_arg = true;
|
invalid_arg = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
try {
|
||||||
*option.target = std::stof(argv[i]);
|
*option.target = std::stof(argv[i]);
|
||||||
|
} catch (const std::invalid_argument&) {
|
||||||
|
invalid_arg = true;
|
||||||
|
}
|
||||||
found_arg = true;
|
found_arg = true;
|
||||||
}))
|
}))
|
||||||
break;
|
break;
|
||||||
@ -337,7 +345,8 @@ bool parse_options(int argc, const char** argv, const std::vector<ArgOptions>& o
|
|||||||
|
|
||||||
if (invalid_arg) {
|
if (invalid_arg) {
|
||||||
if (!valid) {
|
if (!valid) {
|
||||||
LOG_ERROR("error: invalid parameter for argument: %s", arg.c_str());
|
LOG_ERROR("error: invalid parameter for argument \"%s\": \"%s\"",
|
||||||
|
arg.c_str(), (i >= argc) ? "" : argv[i]);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user