diff options
| author | Jonathan Gordon <rockbox@jdgordon.info> | 2006-12-06 12:11:57 +0000 |
|---|---|---|
| committer | Jonathan Gordon <rockbox@jdgordon.info> | 2006-12-06 12:11:57 +0000 |
| commit | 3e24665c417c2dd7dc292c9f12efae4e6544aa11 (patch) | |
| tree | f769a05cd2ad2c4335dd9019c7cfbf787ceafe80 /apps/settings.c | |
| parent | 761122dcff4158b68a0d3f977cff554c4e8365e3 (diff) | |
| download | rockbox-3e24665c417c2dd7dc292c9f12efae4e6544aa11.zip rockbox-3e24665c417c2dd7dc292c9f12efae4e6544aa11.tar.gz rockbox-3e24665c417c2dd7dc292c9f12efae4e6544aa11.tar.bz2 rockbox-3e24665c417c2dd7dc292c9f12efae4e6544aa11.tar.xz | |
Fix settings not saving to disk correctly, (fixes FS#6408)
Stop playback.c requesting a rebuffer while not playing
Shutting down from inside the menu will now save settings to disk, and
entering the main menu will not force a setting save unless a setting
actually changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11674 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/settings.c')
| -rw-r--r-- | apps/settings.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/apps/settings.c b/apps/settings.c index 94d456f..91ffc0d 100644 --- a/apps/settings.c +++ b/apps/settings.c @@ -2086,6 +2086,14 @@ bool do_set_setting(const unsigned char* string, void *variable, if ( function ) function(type_fromvoidptr(cb_data->type,variable)); } + if (cb_data->type == INT) + { + if (oldvalue != *(int*)variable) + settings_save(); + } + else if (oldvalue != *(bool*)variable) + settings_save(); + return false; } bool set_int(const unsigned char* string, |