From 68f29ebf20441c5864b670832a1c31f354ab4d6a Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Wed, 20 Mar 2019 16:37:50 +0100 Subject: [PATCH] [partition] Handle partition flag FlagEsp post KPMCore 3.3.0 --- src/modules/partition/core/KPMHelpers.h | 2 ++ src/modules/partition/core/PartUtils.cpp | 2 +- src/modules/partition/core/PartitionActions.cpp | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/modules/partition/core/KPMHelpers.h b/src/modules/partition/core/KPMHelpers.h index 3a2365984..f1b8bd8a9 100644 --- a/src/modules/partition/core/KPMHelpers.h +++ b/src/modules/partition/core/KPMHelpers.h @@ -36,9 +36,11 @@ class PartitionRole; #ifdef WITH_KPMCOREGT33 #define KPM_PARTITION_FLAG(x) PartitionTable::Flag::x #define KPM_PARTITION_STATE(x) Partition::State::x +#define KPM_PARTITION_FLAG_ESP PartitionTable::Flag::Boot #else #define KPM_PARTITION_FLAG(x) PartitionTable::Flag##x #define KPM_PARTITION_STATE(x) Partition::State##x +#define KPM_PARTITION_FLAG_ESP PartitionTable::FlagEsp #endif /** diff --git a/src/modules/partition/core/PartUtils.cpp b/src/modules/partition/core/PartUtils.cpp index 60bd80044..a4738aa8c 100644 --- a/src/modules/partition/core/PartUtils.cpp +++ b/src/modules/partition/core/PartUtils.cpp @@ -407,7 +407,7 @@ isEfiBootable( const Partition* candidate ) auto flags = PartitionInfo::flags( candidate ); /* If bit 17 is set, old-style Esp flag, it's OK */ - if ( flags.testFlag( PartitionTable::FlagEsp ) ) + if ( flags.testFlag( KPM_PARTITION_FLAG_ESP ) ) return true; /* Otherwise, if it's a GPT table, Boot (bit 0) is the same as Esp */ diff --git a/src/modules/partition/core/PartitionActions.cpp b/src/modules/partition/core/PartitionActions.cpp index f7185b219..074783186 100644 --- a/src/modules/partition/core/PartitionActions.cpp +++ b/src/modules/partition/core/PartitionActions.cpp @@ -133,7 +133,7 @@ doAutopartition( PartitionCoreModule* core, Device* dev, Choices::AutoPartitionO ); PartitionInfo::setFormat( efiPartition, true ); PartitionInfo::setMountPoint( efiPartition, o.efiPartitionMountPoint ); - core->createPartition( dev, efiPartition, PartitionTable::FlagEsp ); + core->createPartition( dev, efiPartition, KPM_PARTITION_FLAG_ESP ); firstFreeSector = lastSector + 1; } else