summaryrefslogtreecommitdiff
path: root/src/main/java/com
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com')
-rw-r--r--src/main/java/com/it_jaros/jns/scan/Scanner.java2
-rw-r--r--src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/main/java/com/it_jaros/jns/scan/Scanner.java b/src/main/java/com/it_jaros/jns/scan/Scanner.java
index 6608ee7..d9dfe47 100644
--- a/src/main/java/com/it_jaros/jns/scan/Scanner.java
+++ b/src/main/java/com/it_jaros/jns/scan/Scanner.java
@@ -61,7 +61,7 @@ public class Scanner implements AutoCloseable {
* with whatever is there already
*/
private void runConsumerLoop(ProducerState<ScanResult> state, Consumer<ScanResult> consumer) {
- while (state.running().get() || state.inPipeline().get() > 0) {
+ while (!cancelledToken.isCancelled() && (state.running().get() || state.inPipeline().get() > 0)) {
PollState<ScanResult> poll = getPollStateOfScanResult(state);
switch (poll) {
case PollState.Success<ScanResult>(ScanResult value) -> consumer.accept(value);
diff --git a/src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java b/src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java
index 61add13..086a864 100644
--- a/src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java
+++ b/src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java
@@ -98,7 +98,7 @@ public class ScanHostTask implements Callable<ScanResult> {
* ONLY exception is when cancelled is set
*/
private void runConsumerLoop(ProducerState<PortResult> state) {
- while (state.running().get() || state.inPipeline().get() > 0) {
+ while (!context.cancelledToken().isCancelled() && (state.running().get() || state.inPipeline().get() > 0)) {
PollState<PortResult> poll = getPortResult(state);
switch (poll) {
case PollState.Success<PortResult>(PortResult value) -> accumulator.add(value);