[partition] Avoid uninitialized variable

- if the partition size is invalid, then warn about it but do
  not print the (uninitialized) size of the partition.
- shuffle code to continue earlier, allowing the "good path"
  code to be out-dented.
main
Adriaan de Groot 5 years ago
parent 687a795b71
commit 9910b23152

@ -172,33 +172,31 @@ PartitionLayout::execute( Device* dev,
// Let's check if we have enough space for each partSize // Let's check if we have enough space for each partSize
for ( const auto& part : qAsConst( m_partLayout ) ) for ( const auto& part : qAsConst( m_partLayout ) )
{ {
qint64 size; if ( !part.partSize.isValid() )
// Calculate partition size {
cWarning() << "Partition" << part.partMountPoint << "size is invalid, skipping...";
continue;
}
if ( part.partSize.isValid() ) // Calculate partition size: Rely on "possibly uninitialized use"
// warnings to ensure that all the cases are covered below.
qint64 size;
// We need to ignore the percent-defined until later
if ( part.partSize.unit() != CalamaresUtils::Partition::SizeUnit::Percent )
{ {
// We need to ignore the percent-defined size = part.partSize.toSectors( totalSize, dev->logicalSize() );
if ( part.partSize.unit() != CalamaresUtils::Partition::SizeUnit::Percent ) }
else
{
if ( part.partMinSize.isValid() )
{ {
size = part.partSize.toSectors( totalSize, dev->logicalSize() ); size = part.partMinSize.toSectors( totalSize, dev->logicalSize() );
} }
else else
{ {
if ( part.partMinSize.isValid() ) size = 0;
{
size = part.partMinSize.toSectors( totalSize, dev->logicalSize() );
}
else
{
size = 0;
}
} }
} }
else
{
cWarning() << "Partition" << part.partMountPoint << "size (" << size << "sectors) is invalid, skipping...";
continue;
}
partSizeMap.insert( &part, size ); partSizeMap.insert( &part, size );
availableSize -= size; availableSize -= size;

Loading…
Cancel
Save