diff --git a/lvm/edit_lv.cgi b/lvm/edit_lv.cgi index 990f779b3..10485dec5 100755 --- a/lvm/edit_lv.cgi +++ b/lvm/edit_lv.cgi @@ -32,11 +32,12 @@ print &ui_hidden("lv", $in{'lv'}); print &ui_hidden("snap", $in{'snap'}); print &ui_table_start($text{'lv_header'}, "width=100%", 4); +$show_size = $lv->{'cow_size'} || $lv->{'size'}; if (!&can_resize_lv_stat(@stat)) { # Current status print &ui_table_row($text{'lv_name'}, $lv->{'name'}); - print &ui_table_row($text{'lv_size'}, &nice_size($lv->{'size'}*1024)); + print &ui_table_row($text{'lv_size'}, &nice_size($show_size * 1024)); } else { # Details for new LV @@ -57,7 +58,7 @@ else { print &ui_table_row($text{'lv_size'}, &ui_radio_table("size_mode", 0, [ [ 0, $text{'lv_size0'}, - &ui_bytesbox("size", $lv->{'size'}*1024, 8) ], + &ui_bytesbox("size", $show_size * 1024, 8) ], [ 1, $text{'lv_size1'}, &ui_textbox("vgsize", undef, 4)."%" ], [ 2, $text{'lv_size2'}, @@ -72,7 +73,7 @@ else { # Check if size is exactly some number of TB, GB or MB, less # than 10240 $div = 1024*1024*1024; - $size = $lv->{'size'}*1024; + $size = $show_size*1024; $nice = 0; while($div >= 1024) { $frac = $size*1.0 / $div; @@ -95,7 +96,7 @@ else { print &ui_table_row($text{'lv_size'}, &ui_radio_table("size_mode", 4, [ [ 4, $text{'lv_sizeabs'}, - &ui_textbox("sizekb", $lv->{'size'}, 8). + &ui_textbox("sizekb", $show_size, 8). " kB" ], [ 0, $text{'lv_sizesimple'}, &ui_bytesbox("size", $size, 8) ], diff --git a/lvm/save_lv.cgi b/lvm/save_lv.cgi index 955986aeb..e7cde9d34 100755 --- a/lvm/save_lv.cgi +++ b/lvm/save_lv.cgi @@ -135,7 +135,8 @@ else { } elsif ($lv->{'is_snap'}) { # Modifying a snapshot - if ($lv->{'size'} != $size) { + $oldsize = $lv->{'cow_size'} || $lv->{'size'}; + if ($oldsize != $size) { $err = &resize_logical_volume($lv, $size); &error("
$err
") if ($err); $lv->{'size'} = $size;