X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=common%2Fmenu.c;h=c53030f3653d9605062926cb4454b92705757ed6;hb=0d7f1ae0fe6c0d9af2c0208aab4843ec3fdfaf52;hp=64b461abb491b8584d8cfc76087c0c808e8d7ebc;hpb=5644369450635fa5c2967bee55b1ac41f6e988d0;p=u-boot diff --git a/common/menu.c b/common/menu.c index 64b461abb4..c53030f365 100644 --- a/common/menu.c +++ b/common/menu.c @@ -1,21 +1,11 @@ /* * Copyright 2010-2011 Calxeda, Inc. * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * This program is distributed in the hope it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . + * SPDX-License-Identifier: GPL-2.0+ */ #include +#include #include #include #include @@ -115,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 @@ -207,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); } @@ -359,7 +350,7 @@ int menu_item_add(struct menu *m, char *item_key, void *item_data) * make it obvious what the key for each entry is. * * item_choice - If not NULL, will be called when asking the user to choose an - * item. Returns a key string corresponding to the choosen item or NULL if + * item. Returns a key string corresponding to the chosen item or NULL if * no item has been selected. * * item_choice_data - Will be passed as the argument to the item_choice function