[partition] Strip extra file after the at sign

- os-proper may return an extra file after the device:
  /dev/sda1:Ubuntu 19.10 (19.10):Ubuntu:linux
  /dev/sdb1@/EFI/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi
This commit is contained in:
Gaël PORTAY 2020-05-15 17:03:51 -04:00
parent 9486ee6fbf
commit 2b1e516ec1
3 changed files with 12 additions and 3 deletions

View file

@ -393,17 +393,25 @@ runOsprober( DeviceModel* dm )
prettyName = lineColumns.value( 2 ).simplified();
}
QString path = lineColumns.value( 0 ).simplified();
QString file, path = lineColumns.value( 0 ).simplified();
if ( !path.startsWith( "/dev/" ) ) //basic sanity check
{
continue;
}
// strip extra file after device: /dev/name@/path/to/file
int index = path.indexOf( '@' );
if ( index != -1 )
{
file = path.right( path.length() - index - 1 );
path = path.left( index );
}
FstabEntryList fstabEntries = lookForFstabEntries( path );
QString homePath = findPartitionPathForMountPoint( fstabEntries, "/home" );
osproberEntries.append(
{ prettyName, path, QString(), canBeResized( dm, path ), lineColumns, fstabEntries, homePath } );
{ prettyName, path, file, QString(), canBeResized( dm, path ), lineColumns, fstabEntries, homePath } );
osproberCleanLines.append( line );
}
}