aboutsummaryrefslogtreecommitdiffstats
path: root/com32/cmenu
diff options
context:
space:
mode:
authorPierre-Alexandre Meyer <pierre@mouraf.org>2009-09-07 14:44:34 -0700
committerPierre-Alexandre Meyer <pierre@mouraf.org>2009-09-07 14:44:34 -0700
commitd6f6fee0a9e9ccd4fdd922c2d7d917f4dce3aa8f (patch)
treee85eafffa54c72bc5b53612ef2e2cf578a2544cd /com32/cmenu
parent93c98eb6780ad1cbbb19d0b70bb07cc9921a6291 (diff)
downloadsyslinux.git-d6f6fee0a9e9ccd4fdd922c2d7d917f4dce3aa8f.tar.gz
syslinux.git-d6f6fee0a9e9ccd4fdd922c2d7d917f4dce3aa8f.tar.xz
syslinux.git-d6f6fee0a9e9ccd4fdd922c2d7d917f4dce3aa8f.zip
cmenu: force refresh after checkbox_handler in complex.c
complex.c has a special checkbox_handler that disables mutual exclusive entries. This works today because each key press triggers a redraw of the whole menu. We can't rely on this if we want to optimize the redraw. Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
Diffstat (limited to 'com32/cmenu')
-rw-r--r--com32/cmenu/complex.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/com32/cmenu/complex.c b/com32/cmenu/complex.c
index 90d43e75..7f8beeb8 100644
--- a/com32/cmenu/complex.c
+++ b/com32/cmenu/complex.c
@@ -211,6 +211,8 @@ t_handler_return checkbox_handler(t_menusystem * ms, t_menuitem * mi)
{
(void)ms; /* Unused */
+ t_handler_return rv;
+
if (mi->action != OPT_CHECKBOX)
return ACTION_INVALID;
@@ -236,7 +238,10 @@ t_handler_return checkbox_handler(t_menusystem * ms, t_menuitem * mi)
}
if (strcmp(mi->data, "mountcd") == 0)
flags.mountcd = (mi->itemdata.checked ? 1 : 0);
- return ACTION_VALID;
+
+ rv.valid = 0;
+ rv.refresh = 1;
+ return rv;
}
int main()