From 006b171204a8947dc9812f615e71947db0473f9f Mon Sep 17 00:00:00 2001 From: lateminer Date: Sat, 9 Mar 2019 13:15:59 +0300 Subject: [PATCH] GUI: Fix disconnect from Qt console --- src/qt/rpcconsole.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/qt/rpcconsole.cpp b/src/qt/rpcconsole.cpp index e7225f7dc..787422523 100644 --- a/src/qt/rpcconsole.cpp +++ b/src/qt/rpcconsole.cpp @@ -972,11 +972,18 @@ void RPCConsole::showBanTableContextMenu(const QPoint& point) void RPCConsole::disconnectSelectedNode() { // Get currently selected peer address - QString strNode = GUIUtil::getEntryData(ui->peerWidget, 0, PeerTableModel::Address).toString(); + int detailNodeRow = clientModel->getPeerTableModel()->getRowByNodeId(cachedNodeid); + + if(detailNodeRow < 0) + return; + // Find the node, disconnect it and clear the selected node - if (CNode *bannedNode = FindNode(strNode.toStdString())) { - bannedNode->fDisconnect = true; - clearSelectedNode(); + const CNodeCombinedStats *stats = clientModel->getPeerTableModel()->getNodeStats(detailNodeRow); + if(stats) { + if (CNode *bannedNode = FindNode(stats->nodeStats.addr)) { + bannedNode->fDisconnect = true; + clearSelectedNode(); + } } }