From c559c16a4a11edfd2b03897cbfc9d3e4fc3445ae Mon Sep 17 00:00:00 2001 From: catbref Date: Thu, 20 Jun 2019 08:50:39 +0100 Subject: [PATCH] Add extra isInterrupted() quick-exits to Controller during TRANSACTION_SIGNATURES processing. --- src/main/java/org/qora/controller/Controller.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/org/qora/controller/Controller.java b/src/main/java/org/qora/controller/Controller.java index 1e5afe92..a05cb4ce 100644 --- a/src/main/java/org/qora/controller/Controller.java +++ b/src/main/java/org/qora/controller/Controller.java @@ -728,6 +728,10 @@ public class Controller extends Thread { continue; } + // Check isInterrupted() here and exit fast + if (Thread.currentThread().isInterrupted()) + return; + // Fetch actual transaction data from peer Message getTransactionMessage = new GetTransactionMessage(signature); Message responseMessage = peer.getResponse(getTransactionMessage); @@ -737,6 +741,10 @@ public class Controller extends Thread { continue; } + // Check isInterrupted() here and exit fast + if (Thread.currentThread().isInterrupted()) + return; + TransactionMessage transactionMessage = (TransactionMessage) responseMessage; TransactionData transactionData = transactionMessage.getTransactionData(); Transaction transaction = Transaction.fromData(repository, transactionData);