From 3934c0660809ac7d7e90e910aafe7017dd7a9e71 Mon Sep 17 00:00:00 2001 From: levonpetrosyan93 Date: Mon, 10 Nov 2025 13:10:34 +0400 Subject: [PATCH 1/4] Crash on Non HD wallets fix --- src/qt/overviewpage.cpp | 2 +- src/qt/walletview.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp index ad667fed4b..f499d4bf94 100644 --- a/src/qt/overviewpage.cpp +++ b/src/qt/overviewpage.cpp @@ -247,7 +247,7 @@ void OverviewPage::setBalance( ui->labelUnconfirmedPrivate->setText(BitcoinUnits::formatWithUnit(unit, unconfirmedPrivateBalance, false, BitcoinUnits::separatorAlways)); ui->labelAnonymizable->setText(BitcoinUnits::formatWithUnit(unit, anonymizableBalance, false, BitcoinUnits::separatorAlways)); - ui->anonymizeButton->setEnabled(spark::IsSparkAllowed() && anonymizableBalance > 0); + ui->anonymizeButton->setEnabled(walletModel->getWallet()->sparkWallet && spark::IsSparkAllowed() && anonymizableBalance > 0); // only show immature (newly mined) balance if it's non-zero, so as not to complicate things // for the non-mining users diff --git a/src/qt/walletview.cpp b/src/qt/walletview.cpp index e3342db596..3b188dfe82 100644 --- a/src/qt/walletview.cpp +++ b/src/qt/walletview.cpp @@ -422,7 +422,7 @@ void WalletView::requestedSyncWarningInfo() void WalletView::showAutomintSparkNotification() { auto sparkModel = walletModel->getSparkModel(); - if (!sparkModel) { + if (!sparkModel || !walletModel->getWallet()->sparkWallet) { return; } From ad711a107809be314f12b8f679f8b79fac9f51de Mon Sep 17 00:00:00 2001 From: levonpetrosyan93 Date: Thu, 13 Nov 2025 15:54:52 +0400 Subject: [PATCH 2/4] Ai comments resolved --- src/qt/overviewpage.cpp | 3 ++- src/qt/walletview.cpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp index f499d4bf94..55a91b5dcc 100644 --- a/src/qt/overviewpage.cpp +++ b/src/qt/overviewpage.cpp @@ -247,7 +247,8 @@ void OverviewPage::setBalance( ui->labelUnconfirmedPrivate->setText(BitcoinUnits::formatWithUnit(unit, unconfirmedPrivateBalance, false, BitcoinUnits::separatorAlways)); ui->labelAnonymizable->setText(BitcoinUnits::formatWithUnit(unit, anonymizableBalance, false, BitcoinUnits::separatorAlways)); - ui->anonymizeButton->setEnabled(walletModel->getWallet()->sparkWallet && spark::IsSparkAllowed() && anonymizableBalance > 0); + auto wallet = walletModel->getWallet(); + ui->anonymizeButton->setEnabled(wallet && wallet->sparkWallet && spark::IsSparkAllowed() && anonymizableBalance > 0); // only show immature (newly mined) balance if it's non-zero, so as not to complicate things // for the non-mining users diff --git a/src/qt/walletview.cpp b/src/qt/walletview.cpp index 3b188dfe82..b18daf132a 100644 --- a/src/qt/walletview.cpp +++ b/src/qt/walletview.cpp @@ -422,7 +422,8 @@ void WalletView::requestedSyncWarningInfo() void WalletView::showAutomintSparkNotification() { auto sparkModel = walletModel->getSparkModel(); - if (!sparkModel || !walletModel->getWallet()->sparkWallet) { + auto wallet = walletModel->getWallet(); + if (!sparkModel || !wallet || !wallet->sparkWallet) { return; } From b8316c89b986fc4120d6f46acf64e22211581303 Mon Sep 17 00:00:00 2001 From: levonpetrosyan93 <45027856+levonpetrosyan93@users.noreply.github.com> Date: Wed, 10 Dec 2025 02:36:41 +0400 Subject: [PATCH 3/4] one more crash fixed (#1721) --- src/qt/receivecoinsdialog.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/qt/receivecoinsdialog.cpp b/src/qt/receivecoinsdialog.cpp index 1fe56db1cc..e02de53ced 100644 --- a/src/qt/receivecoinsdialog.cpp +++ b/src/qt/receivecoinsdialog.cpp @@ -122,6 +122,13 @@ void ReceiveCoinsDialog::setModel(WalletModel *_model) tableView->horizontalHeader()->setMinimumSectionSize(23); tableView->horizontalHeader()->setStretchLastSection(true); + auto wallet = _model->getWallet(); + if (!wallet || !wallet->sparkWallet) { + ui->addressTypeCombobox->removeItem(0); + ui->reuseAddress->show(); + ui->createSparkNameButton->setVisible(false); + } + connect(tableView->selectionModel(), &QItemSelectionModel::selectionChanged, this, &ReceiveCoinsDialog::recentRequestsView_selectionChanged); } @@ -327,7 +334,7 @@ void ReceiveCoinsDialog::copyAmount() void ReceiveCoinsDialog::displayCheckBox(int idx) { - if(idx==0){ + if(ui->addressTypeCombobox->currentText() == "Spark"){ ui->reuseAddress->hide(); ui->createSparkNameButton->setVisible(true); } else { From 4131a33abc97b9e8ff81e874d7907345365a58cd Mon Sep 17 00:00:00 2001 From: levonpetrosyan93 Date: Sat, 20 Dec 2025 02:17:50 +0400 Subject: [PATCH 4/4] Review comment applied --- src/qt/receivecoinsdialog.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qt/receivecoinsdialog.cpp b/src/qt/receivecoinsdialog.cpp index e02de53ced..7ffab993fd 100644 --- a/src/qt/receivecoinsdialog.cpp +++ b/src/qt/receivecoinsdialog.cpp @@ -334,7 +334,7 @@ void ReceiveCoinsDialog::copyAmount() void ReceiveCoinsDialog::displayCheckBox(int idx) { - if(ui->addressTypeCombobox->currentText() == "Spark"){ + if(ui->addressTypeCombobox->currentText() == tr("Spark")){ ui->reuseAddress->hide(); ui->createSparkNameButton->setVisible(true); } else {