diff options
author | Olivier Blin <oblin@mandriva.com> | 2009-09-15 12:18:07 +0000 |
---|---|---|
committer | Olivier Blin <oblin@mandriva.com> | 2009-09-15 12:18:07 +0000 |
commit | 5a27dce64269d298e898333f4b32415bcdb59105 (patch) | |
tree | fb73ed65c78e25aaaae39c93ba7316f4b6e76c7d /draklive | |
parent | 922a97e6758ec8e1297dfae89b8359b66c220abf (diff) | |
download | drakiso-5a27dce64269d298e898333f4b32415bcdb59105.tar drakiso-5a27dce64269d298e898333f4b32415bcdb59105.tar.gz drakiso-5a27dce64269d298e898333f4b32415bcdb59105.tar.bz2 drakiso-5a27dce64269d298e898333f4b32415bcdb59105.tar.xz drakiso-5a27dce64269d298e898333f4b32415bcdb59105.zip |
factorize supplement_slash_size usage
Diffstat (limited to 'draklive')
-rwxr-xr-x | draklive | 18 |
1 files changed, 5 insertions, 13 deletions
@@ -747,8 +747,9 @@ sub allocate_master { sub format_master { my ($live, $media, $opts) = @_; - my $hd = get_hd_from_layout($media, $opts->{device}); + $media->supplement_slash_size($opts->{slash_size}) if $opts->{slash_size}; + my $hd = get_hd_from_layout($media, $opts->{device}); partition_table::raw::zero_MBR($hd); #- FIXME: maybe use fsedit::allocatePartitions to factorize even more? @@ -772,10 +773,7 @@ sub format_master { sub format_disk { my ($live, $opts) = @_; - - my $slash_size = guess_disk_master_size($live); - $live->{media}->supplement_slash_size($slash_size); - + local $opts->{slash_size} = guess_disk_master_size($live); format_master($live, $live->{media}, $opts); } @@ -792,10 +790,7 @@ sub guess_disk_master_size { sub create_disk_master { my ($live, $opts) = @_; - - my $slash_size = guess_disk_master_size($live); - $live->{media}->supplement_slash_size($slash_size); - + local $opts->{slash_size} = guess_disk_master_size($live); $opts->{device} ||= get_disk_master_path($live); allocate_master($live, $live->{media}, $opts); format_master($live, $live->{media}, $opts); @@ -1215,10 +1210,7 @@ sub get_disk_replicator_files { sub create_usb_replicator { my ($live, $opts) = @_; my %files = get_disk_replicator_files($live); - - my $size = fold_left { $::a + $::b } map { directory_usage($_, 'apparent') } keys(%files); - $live->{replicator}{media}->supplement_slash_size($size); - + local $opts->{slash_size} = fold_left { $::a + $::b } map { directory_usage($_, 'apparent') } keys(%files); local $opts->{device} = get_disk_replicator_path($live); allocate_master($live, $live->{replicator}{media}, $opts); format_master($live, $live->{replicator}{media}, $opts); |