From 1941fa3c6e9a68a1004c92f42493508bb46a32b5 Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Mon, 18 Sep 2017 15:04:52 +0200 Subject: read_grub2: fix undefined labels (mga#19014) we were wrongly assuming we entered a new entry when reading eg: "${xen_rm_opts}" (which is why most people never see that error and why I wasn't able to reproduce it, one would need Xen or similar to be installed) Then drakboot would crash with: drakboot crashed ("undefined value for mandatory argument 'text' encountered at ugtk3.pm" Theorically, it could happen with DrakX too when updating a system with Xen. --- perl-install/NEWS | 2 ++ perl-install/bootloader.pm | 2 +- perl-install/install/NEWS | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/perl-install/NEWS b/perl-install/NEWS index 209285c49..8033095ed 100644 --- a/perl-install/NEWS +++ b/perl-install/NEWS @@ -1,5 +1,7 @@ - drakboot: o better read back config + o fix undefined labels when eg: Xen is installed (mga#19014) + drakboot crashed with "undefined value for mandatory argument 'text'' Version 17.88 - 7 July 2017 diff --git a/perl-install/bootloader.pm b/perl-install/bootloader.pm index cf3dfbc18..1e629345e 100644 --- a/perl-install/bootloader.pm +++ b/perl-install/bootloader.pm @@ -329,7 +329,7 @@ sub read_grub2() { $entry->{initrd} = $1; } elsif (/^submenu\s+['"]([^']+)["']/) { push @menus, $1; - } elsif (/}/) { + } elsif (/^\s+}/) { if ($entry) { push @{$bootloader{entries}}, $entry; undef $entry; diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS index 4c130f5be..b14376a3d 100644 --- a/perl-install/install/NEWS +++ b/perl-install/install/NEWS @@ -1,5 +1,7 @@ - bootloader: o better read back config + o fix undefined labels when eg: Xen is installed (mga#19014) + crash with "undefined value for mandatory argument 'text'' Version 17.89 - 7 September 2017 -- cgit v1.2.1