From a3989b83e00b151543953e96886fde51532055f0 Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Wed, 27 Oct 2004 08:15:51 +0000 Subject: many kernel parameters alike "console=tty0 console=ttyS0,57600" can take different values, so we now take the safe side and only remove dups for parameters we know the last parameter is used (bugzilla #12055) --- perl-install/bootloader.pm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'perl-install') diff --git a/perl-install/bootloader.pm b/perl-install/bootloader.pm index 31bb13665..4b3cfddf0 100644 --- a/perl-install/bootloader.pm +++ b/perl-install/bootloader.pm @@ -484,6 +484,8 @@ sub duplicate_kernel_entry { add_entry($bootloader, $entry); } +my $uniq_dict_appends = join('|', qw(devfs acpi pci resume PROFILE XFree)); + sub unpack_append { my ($s) = @_; my @l = split(' ', $s); @@ -494,7 +496,10 @@ sub pack_append { #- normalize $simple = [ reverse(uniq(reverse @$simple)) ]; - $dict = [ reverse(uniq_ { my ($k, $v) = @$_; $k eq 'mem' ? "$k=$v" : $k } reverse @$dict) ]; + $dict = [ reverse(uniq_ { + my ($k, $v) = @$_; + $k =~ /^($uniq_dict_appends)$/ ? $k : "$k=$v"; + } reverse @$dict) ]; join(' ', @$simple, map { "$_->[0]=$_->[1]" } @$dict); } -- cgit v1.2.1