45 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 | |
| From: Javier Martinez Canillas <javierm@redhat.com>
 | |
| Date: Tue, 22 Jan 2019 15:40:25 +0100
 | |
| Subject: [PATCH] Export all variables from the initial context when creating a
 | |
|  submenu
 | |
| 
 | |
| When a submenu is created, only the exported variables are copied to the
 | |
| new menu context. But we want the variables to be global, so export lets
 | |
| export all variables to the new created submenu.
 | |
| 
 | |
| Also, don't unset the default variable when a new submenu is created.
 | |
| 
 | |
| Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
 | |
| ---
 | |
|  grub-core/normal/context.c | 2 +-
 | |
|  grub-core/normal/menu.c    | 2 --
 | |
|  2 files changed, 1 insertion(+), 3 deletions(-)
 | |
| 
 | |
| diff --git a/grub-core/normal/context.c b/grub-core/normal/context.c
 | |
| index ba185e91599..b4baa4392cd 100644
 | |
| --- a/grub-core/normal/context.c
 | |
| +++ b/grub-core/normal/context.c
 | |
| @@ -99,7 +99,7 @@ grub_env_new_context (int export_all)
 | |
|  grub_err_t
 | |
|  grub_env_context_open (void)
 | |
|  {
 | |
| -  return grub_env_new_context (0);
 | |
| +  return grub_env_new_context (1);
 | |
|  }
 | |
|  
 | |
|  int grub_extractor_level = 0;
 | |
| diff --git a/grub-core/normal/menu.c b/grub-core/normal/menu.c
 | |
| index b0cfa32ddd8..30ddcea0c11 100644
 | |
| --- a/grub-core/normal/menu.c
 | |
| +++ b/grub-core/normal/menu.c
 | |
| @@ -375,8 +375,6 @@ grub_menu_execute_entry(grub_menu_entry_t entry, int auto_boot)
 | |
|  
 | |
|    if (ptr && ptr[0] && ptr[1])
 | |
|      grub_env_set ("default", ptr + 1);
 | |
| -  else
 | |
| -    grub_env_unset ("default");
 | |
|  
 | |
|    grub_script_execute_new_scope (entry->sourcecode, entry->argc, entry->args);
 | |
|  
 |