From 2fb1c076d4e39dcaf1d3ca32f19d3ecdb39db862 Mon Sep 17 00:00:00 2001 From: Toni Spets Date: Wed, 24 Nov 2021 20:20:04 +0200 Subject: SSH Agent: Show correct error messages in main window Fixes #7152 --- src/gui/DatabaseWidget.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'src/gui') diff --git a/src/gui/DatabaseWidget.cpp b/src/gui/DatabaseWidget.cpp index 1183810b3..45702d7d7 100644 --- a/src/gui/DatabaseWidget.cpp +++ b/src/gui/DatabaseWidget.cpp @@ -666,11 +666,14 @@ void DatabaseWidget::addToAgent() return; } + SSHAgent* agent = SSHAgent::instance(); OpenSSHKey key; if (settings.toOpenSSHKey(currentEntry, key, true)) { - SSHAgent::instance()->addIdentity(key, settings, database()->uuid()); + if (!agent->addIdentity(key, settings, database()->uuid())) { + m_messageWidget->showMessage(agent->errorString(), MessageWidget::Error); + } } else { - m_messageWidget->showMessage(key.errorString(), MessageWidget::Error); + m_messageWidget->showMessage(settings.errorString(), MessageWidget::Error); } } @@ -687,11 +690,14 @@ void DatabaseWidget::removeFromAgent() return; } + SSHAgent* agent = SSHAgent::instance(); OpenSSHKey key; if (settings.toOpenSSHKey(currentEntry, key, false)) { - SSHAgent::instance()->removeIdentity(key); + if (!agent->removeIdentity(key)) { + m_messageWidget->showMessage(agent->errorString(), MessageWidget::Error); + } } else { - m_messageWidget->showMessage(key.errorString(), MessageWidget::Error); + m_messageWidget->showMessage(settings.errorString(), MessageWidget::Error); } } #endif -- cgit v1.2.3