ktest: Add support for meta characters in GRUB_MENU
[ Upstream commit 68911069f509ba3bf0f513d9af00309e07932906 ] ktest fails if meta characters are in GRUB_MENU, for example GRUB_MENU = 'Fedora (test)' The failure happens because the meta characters are not escaped, so the menu doesn't match in any entries in GRUB_FILE. Use quotemeta() to escape the meta characters. Link: http://lkml.kernel.org/r/20190417235823.18176-1-msys.mizuma@gmail.com Signed-off-by: Masayoshi Mizuma <m.mizuma@jp.fujitsu.com> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org> Stable-dep-of: 26df05a8c142 ("kest.pl: Fix grub2 menu handling for rebooting") Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
7795d8f10e
commit
80295824e1
1 changed files with 4 additions and 2 deletions
|
@ -1866,9 +1866,10 @@ sub get_grub2_index {
|
|||
or dodie "unable to get $grub_file";
|
||||
|
||||
my $found = 0;
|
||||
my $grub_menu_qt = quotemeta($grub_menu);
|
||||
|
||||
while (<IN>) {
|
||||
if (/^menuentry.*$grub_menu/) {
|
||||
if (/^menuentry.*$grub_menu_qt/) {
|
||||
$grub_number++;
|
||||
$found = 1;
|
||||
last;
|
||||
|
@ -1909,9 +1910,10 @@ sub get_grub_index {
|
|||
or dodie "unable to get menu.lst";
|
||||
|
||||
my $found = 0;
|
||||
my $grub_menu_qt = quotemeta($grub_menu);
|
||||
|
||||
while (<IN>) {
|
||||
if (/^\s*title\s+$grub_menu\s*$/) {
|
||||
if (/^\s*title\s+$grub_menu_qt\s*$/) {
|
||||
$grub_number++;
|
||||
$found = 1;
|
||||
last;
|
||||
|
|
Loading…
Reference in a new issue