mirror of
https://github.com/parchlinux/calamares.git
synced 2025-02-24 02:45:44 -05:00
[partition] Use swap-choice member, not the combobox pointer
- Store changes to the selected swap-choice when the combobox changes - Use that member instead of dereferencing the combobox This avoids nullptr crashes when the combobox isn't even created (e.g. when there is only one swap choice).
This commit is contained in:
parent
a4e6d4cd35
commit
5f20eedb6e
2 changed files with 14 additions and 3 deletions
|
@ -318,7 +318,7 @@ ChoicePage::setupChoices()
|
|||
this, &ChoicePage::onActionChanged );
|
||||
if ( m_eraseSwapChoiceComboBox )
|
||||
connect( m_eraseSwapChoiceComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged),
|
||||
this, &ChoicePage::onActionChanged );
|
||||
this, &ChoicePage::onEraseSwapChoiceChanged );
|
||||
|
||||
CALAMARES_RETRANSLATE(
|
||||
m_somethingElseButton->setText( tr( "<strong>Manual partitioning</strong><br/>"
|
||||
|
@ -428,6 +428,15 @@ ChoicePage::onActionChanged()
|
|||
}
|
||||
}
|
||||
|
||||
void
|
||||
ChoicePage::onEraseSwapChoiceChanged()
|
||||
{
|
||||
if ( m_eraseSwapChoiceComboBox )
|
||||
{
|
||||
m_eraseSwapChoice = static_cast<PartitionActions::Choices::SwapChoice>( m_eraseSwapChoiceComboBox->currentData().toInt() );
|
||||
onActionChanged();
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
ChoicePage::applyActionChoice( ChoicePage::InstallChoice choice )
|
||||
|
@ -448,7 +457,7 @@ ChoicePage::applyActionChoice( ChoicePage::InstallChoice choice )
|
|||
m_encryptWidget->passphrase(),
|
||||
gs->value( "efiSystemPartition" ).toString(),
|
||||
CalamaresUtils::GiBtoBytes( gs->value( "requiredStorageGB" ).toDouble() ),
|
||||
static_cast<PartitionActions::Choices::SwapChoice>( m_eraseSwapChoiceComboBox->currentData().toInt() )
|
||||
m_eraseSwapChoice
|
||||
};
|
||||
|
||||
if ( m_core->isDirty() )
|
||||
|
|
|
@ -116,8 +116,10 @@ private slots:
|
|||
void onEncryptWidgetStateChanged();
|
||||
void onHomeCheckBoxStateChanged();
|
||||
|
||||
/** @brief Calls applyActionChoice() as needed. */
|
||||
/// @brief Calls applyActionChoice() as needed.
|
||||
void onActionChanged();
|
||||
/// @brief Calls onActionChanged() as needed.
|
||||
void onEraseSwapChoiceChanged();
|
||||
|
||||
private:
|
||||
void updateNextEnabled();
|
||||
|
|
Loading…
Add table
Reference in a new issue