From 6dbd83f8126220f6c727b92131c2d09c0209cb41 Mon Sep 17 00:00:00 2001
From: Vincent Texier <vit@free.fr>
Date: Thu, 16 Feb 2023 18:48:03 +0100
Subject: [PATCH] [fix] remove useless balance request in transfer.py

fix crash on test_transfer.py ?
QThread: Destroyed while thread is still running Fatal Python error: Aborted
---
 tests/slots/pyqt/windows/test_transfer.py | 10 ++++++++++
 tikka/slots/pyqt/windows/transfer.py      | 10 ++++------
 2 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/tests/slots/pyqt/windows/test_transfer.py b/tests/slots/pyqt/windows/test_transfer.py
index b5c50e79..3c1d0b70 100644
--- a/tests/slots/pyqt/windows/test_transfer.py
+++ b/tests/slots/pyqt/windows/test_transfer.py
@@ -94,6 +94,11 @@ def test_transfer_success(
         # user click on Send button
         window.sendButton.click()
 
+    with qtbot.waitSignal(
+        window.fetch_sender_balance_from_network_async_qworker.finished, timeout=2000
+    ) as _:
+        pass
+
     # transfer success
     assert window.transfer_success is True
 
@@ -173,6 +178,11 @@ def test_transfer_failure(
         # user click on Send button
         window.sendButton.click()
 
+    with qtbot.waitSignal(
+        window.fetch_recipient_balance_from_network_async_qworker.finished, timeout=2000
+    ) as _:
+        pass
+
     # transfer failed
     assert window.transfer_success is False
 
diff --git a/tikka/slots/pyqt/windows/transfer.py b/tikka/slots/pyqt/windows/transfer.py
index b174c062..ce010a8b 100644
--- a/tikka/slots/pyqt/windows/transfer.py
+++ b/tikka/slots/pyqt/windows/transfer.py
@@ -201,14 +201,14 @@ class TransferWindow(QDialog, Ui_TransferDialog):
         ##############################
         # fetch recipient balance
         self.fetch_recipient_balance_from_network_async_qworker = AsyncQWorker(
-            self.fetch_recipient_balance_from_network, self.mutex
+            self.fetch_recipient_balance_from_network, self.mutex, self
         )
         self.fetch_recipient_balance_from_network_async_qworker.finished.connect(
             self._on_finished_fetch_recipient_balance_from_network
         )
         # fetch sender balance
         self.fetch_sender_balance_from_network_async_qworker = AsyncQWorker(
-            self.fetch_sender_balance_from_network, self.mutex
+            self.fetch_sender_balance_from_network, self.mutex, self
         )
         self.fetch_sender_balance_from_network_async_qworker.finished.connect(
             self._on_finished_fetch_sender_balance_from_network
@@ -216,14 +216,14 @@ class TransferWindow(QDialog, Ui_TransferDialog):
 
         # fetch fees from network
         self.fetch_fees_from_network_async_qworker = AsyncQWorker(
-            self.fetch_fees_from_network, self.mutex
+            self.fetch_fees_from_network, self.mutex, self
         )
         self.fetch_fees_from_network_async_qworker.finished.connect(
             self._on_finished_fetch_fees_from_network
         )
         # send transfer to network
         self.send_tranfer_to_network_async_qworker = AsyncQWorker(
-            self.send_transfer_to_network, self.mutex
+            self.send_transfer_to_network, self.mutex, self
         )
         self.send_tranfer_to_network_async_qworker.finished.connect(
             self._on_finished_send_transfer_to_network
@@ -565,8 +565,6 @@ class TransferWindow(QDialog, Ui_TransferDialog):
 
         :return:
         """
-        self.fetch_recipient_balance_from_network_async_qworker.start()
-
         # sender account locked...
         if not self.application.wallets.is_unlocked(self.sender_account.address):
             # ask password...
-- 
GitLab