summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPascal Terjan <pterjan@mandriva.org>2010-02-09 13:52:48 +0000
committerPascal Terjan <pterjan@mandriva.org>2010-02-09 13:52:48 +0000
commita91bcf5a79edb4a653f3114d55f508eb00615cb2 (patch)
tree31af0dc17cd6e28d0b88e9adb255d07eede13e59
parent0f58e6576e982f11a429fc6b8b5110c7c0a7e2f8 (diff)
downloaddrakx-a91bcf5a79edb4a653f3114d55f508eb00615cb2.tar
drakx-a91bcf5a79edb4a653f3114d55f508eb00615cb2.tar.gz
drakx-a91bcf5a79edb4a653f3114d55f508eb00615cb2.tar.bz2
drakx-a91bcf5a79edb4a653f3114d55f508eb00615cb2.tar.xz
drakx-a91bcf5a79edb4a653f3114d55f508eb00615cb2.zip
partitioning_wizard: fix a crash on empty disks and enable back lvm
-rw-r--r--perl-install/fs/partitioning_wizard.pm7
-rw-r--r--perl-install/install/NEWS3
-rw-r--r--perl-install/lvm.pm2
3 files changed, 7 insertions, 5 deletions
diff --git a/perl-install/fs/partitioning_wizard.pm b/perl-install/fs/partitioning_wizard.pm
index 666b66092..3c5f9127e 100644
--- a/perl-install/fs/partitioning_wizard.pm
+++ b/perl-install/fs/partitioning_wizard.pm
@@ -87,7 +87,7 @@ sub partitionWizardSolutions {
# each solution is a [ score, text, function ], where the function retunrs true if succeeded
my @hds_rw = grep { !$_->{readonly} } @$hds;
- my @hds_can_add = grep { $_->can_add } @hds_rw;
+ my @hds_can_add = grep { $_->{type} ne 'hd' || $_->can_add } @hds_rw;
if (fs::get::hds_free_space(@hds_can_add) > $min_linux) {
$solutions{free_space} = [ 30, N("Use free space"), sub { fsedit::auto_allocate($all_hds, $partitions); 1 } ];
} else {
@@ -396,7 +396,7 @@ sub create_display_box {
gtkset_size_request(Gtk2::Label->new("."), 1, 0));
gtkpack__($display_box, $part_sep);
}
- $display_box->remove($part_sep);
+ $display_box->remove($part_sep) if $part_sep;
unless ($resize || $fill_empty) {
my @types = (N_("Ext2/3/4"), N_("XFS"), N_("Swap"), arch() =~ /sparc/ ? N_("SunOS") : arch() eq "ppc" ? N_("HFS") : N_("Windows"),
N_("Other"), N_("Empty"));
@@ -504,6 +504,7 @@ sub main {
my @kinds = map { diskdrake::hd_gtk::hd2kind($_) } sort { $a->{is_removable} <=> $b->{is_removable} } @{$all_hds->{hds} };
push @kinds, map { diskdrake::hd_gtk::raid2kind($_) } @{$all_hds->{raids}};
+ push @kinds, map { diskdrake::hd_gtk::lvm2kind($_) } @{$all_hds->{lvms}};
my $hdchoice = Gtk2::HBox->new;
@@ -512,7 +513,7 @@ sub main {
my $combobox = Gtk2::ComboBox->new_text;
foreach (@kinds) {
my $info = $_->{val}{info} || $_->{val}{device};
- $info =~ s|^(?:.*/)?(.{16}).*|$1|;
+ $info =~ s|^(?:.*/)?(.{32}).*|$1|;
$info .= " (" . formatXiB($_->{val}{totalsectors}, 512) . ")" if $_->{val}{totalsectors};
$combobox->append_text($info);
}
diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS
index 573643bb3..da57eca01 100644
--- a/perl-install/install/NEWS
+++ b/perl-install/install/NEWS
@@ -1,4 +1,4 @@
-Version 12.77.5 - 04 February 2010
+Version 12.77.5 - 09 February 2010
- do not offer to upgrade/install in restore mode
- locale settings
@@ -12,6 +12,7 @@ Version 12.77.5 - 04 February 2010
o display lvm/dmraid/... name in combo box
o suggest non-removable disks first
o unmount swap too when unmounting all partitions
+ o fix a crash on empty disks
Version 12.77 - 30 October 2009
diff --git a/perl-install/lvm.pm b/perl-install/lvm.pm
index 3205fa2fd..15fbe554a 100644
--- a/perl-install/lvm.pm
+++ b/perl-install/lvm.pm
@@ -17,7 +17,7 @@ sub new {
my ($class, $name) = @_;
$name =~ s/[^\w-]/_/g;
$name = substr($name, 0, 63); # max length must be < NAME_LEN / 2 where NAME_LEN is 128
- bless { disks => [], VG_name => $name }, $class;
+ bless { disks => [], VG_name => $name, device => $name }, $class;
}
sub use_pt_type { 0 }
sub hasExtended { 0 }