readint integer validation made better
This commit is contained in:
@@ -1857,11 +1857,16 @@ void YellowNote::load()
|
||||
auto readInt = [](FILE *f, int default_value) {
|
||||
char buffer[100];
|
||||
fgets(buffer, 100, f);
|
||||
int v = atoi(buffer);
|
||||
if (default_value >= 0 && v == 0) {
|
||||
std::string s = buffer;
|
||||
trim(s);
|
||||
std::string::iterator sit = s.begin();
|
||||
while(sit != s.end() && (*sit >= '0' && *sit <= '9')) { sit++; }
|
||||
if (sit != s.end()) {
|
||||
return default_value;
|
||||
} else {
|
||||
int v = atoi(buffer);
|
||||
return v;
|
||||
}
|
||||
return v;
|
||||
};
|
||||
|
||||
_in_transaction = true;
|
||||
|
||||
Reference in New Issue
Block a user