aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/ManaTools/Shared/disk_backend/PartitionTable.pm4
-rw-r--r--lib/ManaTools/Shared/disk_backend/Plugin/Loop.pm1
2 files changed, 5 insertions, 0 deletions
diff --git a/lib/ManaTools/Shared/disk_backend/PartitionTable.pm b/lib/ManaTools/Shared/disk_backend/PartitionTable.pm
index 9636fae0..fc4900f7 100644
--- a/lib/ManaTools/Shared/disk_backend/PartitionTable.pm
+++ b/lib/ManaTools/Shared/disk_backend/PartitionTable.pm
@@ -75,7 +75,9 @@ has 'disk' => (
# the disk was not detected
return undef;
}
+ chomp($lines[1]);
my @fields = split(':', $lines[1]);
+ (scalar(@fields) == 8) or die('unexpected parted output...');
# set the partition table device file
$self->device($fields[0]);
# set the partition table sectors
@@ -93,7 +95,9 @@ has 'disk' => (
my $parts = $self->partitions();
my $i = 2;
while (defined($lines[$i])) {
+ chomp($lines[$i]);
@fields = split(':', $lines[$i]);
+ (scalar(@fields) == 7) or die('unexpected parted output...');
$parts->{$fields[0]} = {
file => $self->device() . $fields[0],
begin => $fields[1] =~ s/s$//r,
diff --git a/lib/ManaTools/Shared/disk_backend/Plugin/Loop.pm b/lib/ManaTools/Shared/disk_backend/Plugin/Loop.pm
index 024c5026..b82ab80a 100644
--- a/lib/ManaTools/Shared/disk_backend/Plugin/Loop.pm
+++ b/lib/ManaTools/Shared/disk_backend/Plugin/Loop.pm
@@ -130,6 +130,7 @@ override ('probe', sub {
for my $line (@lines) {
chomp($line);
my @fields = split(' ', $line);
+ (scalar(@fields) == 9) or die('unexpected losetup output...');
my $loopfile = $self->_sanitize_string($fields[1]);
my $bdfile = '/sys/block/'. basename($loopfile);
my $io = $self->parent->mkio('Disk', {id => basename($loopfile), path => $bdfile});