diff options
author | Jens Arnold <amiconn@rockbox.org> | 2008-02-23 11:06:19 +0000 |
---|---|---|
committer | Jens Arnold <amiconn@rockbox.org> | 2008-02-23 11:06:19 +0000 |
commit | fcd52cf058bad2afdc5038e8a849fe4458289739 (patch) | |
tree | a4a7872935d1fda1123b2d4fc54f06c135df1438 /apps | |
parent | e7e3172b5286deedc744946862baa655b3e03d35 (diff) | |
download | rockbox-fcd52cf058bad2afdc5038e8a849fe4458289739.tar.gz rockbox-fcd52cf058bad2afdc5038e8a849fe4458289739.zip |
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
Diffstat (limited to 'apps')
-rw-r--r-- | apps/settings.c | 38 |
1 files changed, 23 insertions, 15 deletions
diff --git a/apps/settings.c b/apps/settings.c index 5bbdcb1784..4ac646a84c 100644 --- a/apps/settings.c +++ b/apps/settings.c | |||
@@ -471,25 +471,33 @@ static bool settings_write_config(char* filename, int options) | |||
471 | continue; | 471 | continue; |
472 | value[0] = '\0'; | 472 | value[0] = '\0'; |
473 | 473 | ||
474 | if ((options == SETTINGS_SAVE_CHANGED) && | 474 | switch (options) |
475 | !is_changed(i)) | 475 | { |
476 | continue; | 476 | case SETTINGS_SAVE_CHANGED: |
477 | else if ((options == SETTINGS_SAVE_SOUND) && | 477 | if (!is_changed(i)) |
478 | ((settings[i].flags&F_SOUNDSETTING) == 0)) | 478 | continue; |
479 | continue; | 479 | break; |
480 | else if ((options == SETTINGS_SAVE_THEME) && | 480 | case SETTINGS_SAVE_SOUND: |
481 | ((settings[i].flags&F_THEMESETTING) == 0)) | 481 | if ((settings[i].flags&F_SOUNDSETTING) == 0) |
482 | continue; | 482 | continue; |
483 | break; | ||
484 | case SETTINGS_SAVE_THEME: | ||
485 | if ((settings[i].flags&F_THEMESETTING) == 0) | ||
486 | continue; | ||
487 | break; | ||
483 | #ifdef HAVE_RECORDING | 488 | #ifdef HAVE_RECORDING |
484 | else if ((options == SETTINGS_SAVE_RECPRESETS) && | 489 | case SETTINGS_SAVE_RECPRESETS: |
485 | ((settings[i].flags&F_RECSETTING) == 0)) | 490 | if ((settings[i].flags&F_RECSETTING) == 0) |
486 | continue; | 491 | continue; |
492 | break; | ||
487 | #endif | 493 | #endif |
488 | #if CONFIG_CODEC == SWCODEC | 494 | #if CONFIG_CODEC == SWCODEC |
489 | else if ((options == SETTINGS_SAVE_EQPRESET) && | 495 | case SETTINGS_SAVE_EQPRESET: |
490 | ((settings[i].flags&F_EQSETTING) == 0)) | 496 | if ((settings[i].flags&F_EQSETTING) == 0) |
491 | continue; | 497 | continue; |
498 | break; | ||
492 | #endif | 499 | #endif |
500 | } | ||
493 | switch (settings[i].flags&F_T_MASK) | 501 | switch (settings[i].flags&F_T_MASK) |
494 | { | 502 | { |
495 | case F_T_INT: | 503 | case F_T_INT: |