Browse Source

This puts the logic for the ARS device in the proper place in submit.

master
freesource 23 years ago
parent
commit
6297583e9b
  1. 14
      gbootroot

14
gbootroot

@ -2514,6 +2514,7 @@ elsif (defined $container[METHOD] && defined $container[KERNEL] &&
: ($container[OBJCOPY_BOOL] = 6); : ($container[OBJCOPY_BOOL] = 6);
} }
if (!defined $entry_advanced[0]) { if (!defined $entry_advanced[0]) {
$container[ABS_DEVICE] = $device . "ea1"; $container[ABS_DEVICE] = $device . "ea1";
$entry_advanced[0] = $device; $entry_advanced[0] = $device;
@ -2522,6 +2523,11 @@ elsif (defined $container[METHOD] && defined $container[KERNEL] &&
$container[ABS_DEVICE] = $entry_advanced[0] . "ea1"; $container[ABS_DEVICE] = $entry_advanced[0] . "ea1";
} }
# If ARS was never opened, root device defaults to boot device.
# This keeps the logic in the right place.
$entry_advanced[3] = $container[BOOT_DEVICE] if !$entry_advanced[3];
# Works now .. whoosh! # Works now .. whoosh!
if ($container[ABS_OPT_DEVICE]) { if ($container[ABS_OPT_DEVICE]) {
if ($container[ABS_OPT_DEVICE] ne "") { if ($container[ABS_OPT_DEVICE] ne "") {
@ -2830,6 +2836,7 @@ sub lilo_put_it_together {
if ( $fs_type eq "genext2fs" ) { if ( $fs_type eq "genext2fs" ) {
my $error; my $error;
=pod
# #
if ( if (
sys("/usr/lib/bootroot/$main::makefs -b $device_size -d $mnt -D $device_table $entry_advanced[0]") !~ sys("/usr/lib/bootroot/$main::makefs -b $device_size -d $mnt -D $device_table $entry_advanced[0]") !~
@ -2837,6 +2844,7 @@ sub lilo_put_it_together {
$error = error("Cannot $fs_type filesystem.\n"); $error = error("Cannot $fs_type filesystem.\n");
return "ERROR" if $error && $error eq "ERROR"; return "ERROR" if $error && $error eq "ERROR";
} }
=cut
# #
} }
@ -2869,7 +2877,7 @@ sub lilo_put_it_together {
# This enforces that lilo is only ran on a bootable drive, # This enforces that lilo is only ran on a bootable drive,
# otherwise the user has to do it manually. # otherwise the user has to do it manually.
if ($container[BOOT_DEVICE] eq $entry_advanced[0]) { if ($container[BOOT_DEVICE] eq $entry_advanced[0]) {
=pod
# #
if ( err_custom("lilo -v -C brlilo.conf -r $mnt", if ( err_custom("lilo -v -C brlilo.conf -r $mnt",
"gBootRoot: ERROR: lilo failed") == 2 ) { "gBootRoot: ERROR: lilo failed") == 2 ) {
@ -2877,7 +2885,7 @@ sub lilo_put_it_together {
return; return;
} }
# #
=cut
} }
@ -2903,8 +2911,6 @@ sub lilo_put_it_together {
# different devices to be used. -- now there is $entry_advanced[3] which # different devices to be used. -- now there is $entry_advanced[3] which
# is the ROOT_DEVICE # is the ROOT_DEVICE
if ($um == 0 ) { if ($um == 0 ) {
# ARS was never opened, so root device defaults to boot device.
$entry_advanced[3] = $container[BOOT_DEVICE] if !$entry_advanced[3];
mtab(1); mtab(1);
} }
else { else {

Loading…
Cancel
Save