X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=common%2Fmenu.c;h=eda96d68bc564e5cc45e1478fdd4b4aaad41a66f;hb=9aa1280a5644a1d05859b862ebc7b60a862e0ef3;hp=ba393adc32cbf1e3c26f1e6dfcc8f247fd43691a;hpb=3be2bdf5dc69b3142c1162a59bc67191c9077567;p=u-boot diff --git a/common/menu.c b/common/menu.c index ba393adc32..eda96d68bc 100644 --- a/common/menu.c +++ b/common/menu.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include @@ -104,12 +105,9 @@ static inline void *menu_item_destroy(struct menu *m, return NULL; } -void __menu_display_statusline(struct menu *m) +__weak void menu_display_statusline(struct menu *m) { - return; } -void menu_display_statusline(struct menu *m) - __attribute__ ((weak, alias("__menu_display_statusline"))); /* * Display a menu so the user can make a choice of an item. First display its @@ -196,13 +194,17 @@ static inline int menu_interactive_choice(struct menu *m, void **choice) menu_display(m); if (!m->item_choice) { - readret = readline_into_buffer("Enter choice: ", cbuf, - m->timeout / 10); + readret = cli_readline_into_buffer("Enter choice: ", + cbuf, + m->timeout / 10); if (readret >= 0) { choice_item = menu_item_by_key(m, cbuf); if (!choice_item) printf("%s not found\n", cbuf); + } else if (readret == -1) { + printf("\n"); + return -EINTR; } else { return menu_default_choice(m, choice); }