mirror of
https://github.com/sockspls/badfish
synced 2025-05-16 15:39:36 +00:00
Check bounds in set_option_value()
Normally it's up to the GUI to check for option's limits, but we could receive the new value directly from the user by teminal window. So let's check the bounds anyway. No functional change. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
parent
02e12a69a7
commit
85146ca0a9
1 changed files with 21 additions and 3 deletions
|
@ -292,10 +292,28 @@ void set_option_value(const string& name, const string& value) {
|
|||
else if (v == "false")
|
||||
v = "0";
|
||||
|
||||
if (options.find(name) != options.end())
|
||||
options[name].currentValue = v;
|
||||
else
|
||||
if (options.find(name) == options.end())
|
||||
{
|
||||
std::cout << "No such option: " << name << std::endl;
|
||||
return;
|
||||
}
|
||||
|
||||
// Normally it's up to the GUI to check for option's limits,
|
||||
// but we could receive the new value directly from the user
|
||||
// by teminal window. So let's check the bounds anyway.
|
||||
Option& opt = options[name];
|
||||
|
||||
if (opt.type == CHECK && v != "0" && v != "1")
|
||||
return;
|
||||
|
||||
else if (opt.type == SPIN)
|
||||
{
|
||||
int val = atoi(v.c_str());
|
||||
if (val < opt.minValue || val > opt.maxValue)
|
||||
return;
|
||||
}
|
||||
|
||||
opt.currentValue = v;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue