mirror of
https://github.com/eried/portapack-mayhem.git
synced 2025-01-11 15:29:28 -05:00
Correct HamRadio frequency validation (#1266)
This commit is contained in:
parent
fa4623db7c
commit
4ed06b9eff
@ -336,11 +336,18 @@ bool parse_freqman_entry(std::string_view str, freqman_entry& entry) {
|
||||
if (entry.type == freqman_type::Unknown)
|
||||
return false;
|
||||
|
||||
// Ranges should have both frequencies set and A <= B.
|
||||
if (entry.type == freqman_type::Range || entry.type == freqman_type::HamRadio) {
|
||||
if (entry.frequency_a == 0 || entry.frequency_b == 0)
|
||||
return false;
|
||||
// Frequency A must be set for all types
|
||||
if (entry.frequency_a == 0)
|
||||
return false;
|
||||
|
||||
// Frequency B must be set for type Range or Ham Radio
|
||||
if (entry.type == freqman_type::Range || entry.type == freqman_type::HamRadio) {
|
||||
if (entry.frequency_b == 0)
|
||||
return false;
|
||||
}
|
||||
|
||||
// Ranges should have frequencies A <= B.
|
||||
if (entry.type == freqman_type::Range) {
|
||||
if (entry.frequency_a > entry.frequency_b)
|
||||
return false;
|
||||
}
|
||||
@ -457,4 +464,4 @@ bool FreqmanDB::empty() const {
|
||||
// FileWrapper always presents a single line even for empty files.
|
||||
// A DB is only really empty if the file size is 0.
|
||||
return !wrapper_ || wrapper_->size() == 0;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user