diff options
author | Jonathan Gordon <rockbox@jdgordon.info> | 2007-07-19 09:17:25 +0000 |
---|---|---|
committer | Jonathan Gordon <rockbox@jdgordon.info> | 2007-07-19 09:17:25 +0000 |
commit | ca0cc784bc8268bb2b911fbbb397562c86d520b3 (patch) | |
tree | 5b611c5511d02464dab99faef716b673a56dc864 /apps/gui/option_select.c | |
parent | 9fe6e0214fb2c13ca68ddeb2a7492de940adb99e (diff) | |
download | rockbox-ca0cc784bc8268bb2b911fbbb397562c86d520b3.tar.gz rockbox-ca0cc784bc8268bb2b911fbbb397562c86d520b3.zip |
Fix the problem where settings stopped saving automatically
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13929 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui/option_select.c')
-rw-r--r-- | apps/gui/option_select.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/apps/gui/option_select.c b/apps/gui/option_select.c index 7d74e202be..d104a6461d 100644 --- a/apps/gui/option_select.c +++ b/apps/gui/option_select.c | |||
@@ -424,23 +424,18 @@ bool option_screen(struct settings_list *setting, bool use_temp_var) | |||
424 | function(*variable); | 424 | function(*variable); |
425 | } | 425 | } |
426 | 426 | ||
427 | if (use_temp_var) | 427 | if (oldvalue != *variable) |
428 | { | 428 | { |
429 | if (var_type == F_T_INT || var_type == F_T_UINT) | 429 | if (use_temp_var) |
430 | { | 430 | { |
431 | if (oldvalue != *variable) | 431 | if (var_type == F_T_INT || var_type == F_T_UINT) |
432 | { | ||
433 | *(int*)setting->setting = *variable; | 432 | *(int*)setting->setting = *variable; |
434 | settings_save(); | 433 | else |
435 | } | 434 | *(bool*)setting->setting = *variable?true:false; |
436 | } | ||
437 | else if (oldvalue != *variable) | ||
438 | { | ||
439 | *(bool*)setting->setting = *variable?true:false; | ||
440 | settings_save(); | ||
441 | } | 435 | } |
436 | settings_save(); | ||
442 | } | 437 | } |
443 | 438 | ||
444 | action_signalscreenchange(); | 439 | action_signalscreenchange(); |
445 | return false; | 440 | return false; |
446 | } | 441 | } |