summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2012-04-30 15:11:08 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2012-04-30 15:11:08 +0200
commit55d88805edf029f53df61ab028582e632991e960 (patch)
tree31e68921501005c39dad71b19d75fa15529139d8 /common
parent78312fa0c5497b089bb82e55ebe50ac6b8ce4bf9 (diff)
parent9ccc05d2beeb11aa19e6d6ffd1cf287382fd13a7 (diff)
downloadbarebox-55d88805edf029f53df61ab028582e632991e960.tar.gz
barebox-55d88805edf029f53df61ab028582e632991e960.tar.xz
Merge tag 'j-master-fixes' of git://git.jcrosoft.org/barebox
Master Fixes usb driver name (driver_d) Menu fixes
Diffstat (limited to 'common')
-rw-r--r--common/menu.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/common/menu.c b/common/menu.c
index fd21e52a31..191bd64cd2 100644
--- a/common/menu.c
+++ b/common/menu.c
@@ -252,7 +252,7 @@ static void print_menu(struct menu *m)
int menu_show(struct menu *m)
{
- int ch;
+ int ch, ch_previous = 0;
int escape = 0;
int countdown;
int auto_display_len = 16;
@@ -296,7 +296,7 @@ int menu_show(struct menu *m)
do {
if (m->auto_select >= 0)
- ch = KEY_ENTER;
+ ch = KEY_RETURN;
else
ch = getc();
@@ -340,7 +340,11 @@ int menu_show(struct menu *m)
print_menu_entry(m, m->selected, 1);
break;
case KEY_ENTER:
+ if (ch_previous == KEY_RETURN)
+ break;
case KEY_RETURN:
+ if (ch_previous == KEY_ENTER)
+ break;
clear();
gotoXY(1,1);
m->selected->action(m, m->selected);
@@ -351,6 +355,7 @@ int menu_show(struct menu *m)
default:
break;
}
+ ch_previous = ch;
} while(1);
return 0;