summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2008-02-23 11:06:19 +0000
committerJens Arnold <amiconn@rockbox.org>2008-02-23 11:06:19 +0000
commitfcd52cf058bad2afdc5038e8a849fe4458289739 (patch)
treea4a7872935d1fda1123b2d4fc54f06c135df1438
parente7e3172b5286deedc744946862baa655b3e03d35 (diff)
downloadrockbox-fcd52cf058bad2afdc5038e8a849fe4458289739.zip
rockbox-fcd52cf058bad2afdc5038e8a849fe4458289739.tar.gz
rockbox-fcd52cf058bad2afdc5038e8a849fe4458289739.tar.bz2
rockbox-fcd52cf058bad2afdc5038e8a849fe4458289739.tar.xz
Slightly more efficient way to decide which settings to save.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16387 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/settings.c38
1 files changed, 23 insertions, 15 deletions
diff --git a/apps/settings.c b/apps/settings.c
index 5bbdcb1..4ac646a 100644
--- a/apps/settings.c
+++ b/apps/settings.c
@@ -471,25 +471,33 @@ static bool settings_write_config(char* filename, int options)
continue;
value[0] = '\0';
- if ((options == SETTINGS_SAVE_CHANGED) &&
- !is_changed(i))
- continue;
- else if ((options == SETTINGS_SAVE_SOUND) &&
- ((settings[i].flags&F_SOUNDSETTING) == 0))
- continue;
- else if ((options == SETTINGS_SAVE_THEME) &&
- ((settings[i].flags&F_THEMESETTING) == 0))
- continue;
+ switch (options)
+ {
+ case SETTINGS_SAVE_CHANGED:
+ if (!is_changed(i))
+ continue;
+ break;
+ case SETTINGS_SAVE_SOUND:
+ if ((settings[i].flags&F_SOUNDSETTING) == 0)
+ continue;
+ break;
+ case SETTINGS_SAVE_THEME:
+ if ((settings[i].flags&F_THEMESETTING) == 0)
+ continue;
+ break;
#ifdef HAVE_RECORDING
- else if ((options == SETTINGS_SAVE_RECPRESETS) &&
- ((settings[i].flags&F_RECSETTING) == 0))
- continue;
+ case SETTINGS_SAVE_RECPRESETS:
+ if ((settings[i].flags&F_RECSETTING) == 0)
+ continue;
+ break;
#endif
#if CONFIG_CODEC == SWCODEC
- else if ((options == SETTINGS_SAVE_EQPRESET) &&
- ((settings[i].flags&F_EQSETTING) == 0))
- continue;
+ case SETTINGS_SAVE_EQPRESET:
+ if ((settings[i].flags&F_EQSETTING) == 0)
+ continue;
+ break;
#endif
+ }
switch (settings[i].flags&F_T_MASK)
{
case F_T_INT: