mirror of
https://github.com/kdave/btrfs-progs
synced 2025-02-19 03:06:50 +00:00
btrfs-progs: fi resize: fix false 0.00B size output
Resize to nums without sign prefix makes false output: $ btrfs fi resize 1:150g /srv/extra Resize device id 1 (/dev/sdb1) from 298.09GiB to 0.00B The resize operation would take effect though. Fix it by handling the case if mod is 0 in check_resize_args(). Issue: #307 Reported-by: Chris Murphy <lists@colorremedies.com> Signed-off-by: Su Yue <l@damenly.su> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
f730154d95
commit
5dbe68d7f0
@ -1158,6 +1158,16 @@ static int check_resize_args(const char *amount, const char *path) {
|
||||
}
|
||||
old_size = di_args[dev_idx].total_bytes;
|
||||
|
||||
/* For target sizes without +/- sign prefix (e.g. 1:150g) */
|
||||
if (mod == 0) {
|
||||
new_size = diff;
|
||||
diff = max(old_size, new_size) - min(old_size, new_size);
|
||||
if (new_size > old_size)
|
||||
mod = 1;
|
||||
else if (new_size < old_size)
|
||||
mod = -1;
|
||||
}
|
||||
|
||||
if (mod < 0) {
|
||||
if (diff > old_size) {
|
||||
error("current size is %s which is smaller than %s",
|
||||
|
Loading…
Reference in New Issue
Block a user