mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-07-26 14:58:12 +00:00
fix(DataStore): clamp notif_melody_dm/ch to valid range [0-3]
After PR #16 added None (slot=3) to melody options, only notif_melody_ad had a bounds check. Add matching clamps for dm and ch to prevent stray bytes from an older prefs file triggering buildMelodyFromPrefs with an out-of-range slot. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -285,7 +285,9 @@ void DataStore::loadPrefsInt(const char *filename, NodePrefs& _prefs, double& no
|
||||
if (_prefs.ringtone2_len > 32) _prefs.ringtone2_len = 0;
|
||||
rd(_prefs.ringtone2_notes, sizeof(_prefs.ringtone2_notes));
|
||||
rd(&_prefs.notif_melody_dm, sizeof(_prefs.notif_melody_dm));
|
||||
if (_prefs.notif_melody_dm > 3) _prefs.notif_melody_dm = 0;
|
||||
rd(&_prefs.notif_melody_ch, sizeof(_prefs.notif_melody_ch));
|
||||
if (_prefs.notif_melody_ch > 3) _prefs.notif_melody_ch = 0;
|
||||
rd(&_prefs.ch_notif_melody_set, sizeof(_prefs.ch_notif_melody_set));
|
||||
rd(&_prefs.ch_notif_melody_2, sizeof(_prefs.ch_notif_melody_2));
|
||||
rd(_prefs.dm_melody, sizeof(_prefs.dm_melody));
|
||||
|
||||
Reference in New Issue
Block a user