[PATCH 1/1] menu: export box state to menu_box_state when using a command

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Sun May 27 06:36:32 EDT 2012


this will allow to have different action based on the box state in shell

as example
menu -e -a -m boot -c 'export test=${menu_box_state}' -R -b 1 -d "yes/no"

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com>
---
 common/menu.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/common/menu.c b/common/menu.c
index 6c530b6..070170e 100644
--- a/common/menu.c
+++ b/common/menu.c
@@ -483,6 +483,11 @@ static void menu_action_command(struct menu *m, struct menu_entry *me)
 	int ret;
 	const char *s = getenv(e->command);
 
+	if (me->type == MENU_ENTRY_BOX)
+		export_env_ull("menu_box_state", me->box_state);
+	else
+		setenv("menu_box_state", "");
+
 	/* can be a command as boot */
 	if (!s)
 		s = e->command;
-- 
1.7.9.1




More information about the barebox mailing list