diff --git a/java/src/processing/mode/java/pdex/ErrorCheckerService.java b/java/src/processing/mode/java/pdex/ErrorCheckerService.java index e2b809522..1fb98497e 100644 --- a/java/src/processing/mode/java/pdex/ErrorCheckerService.java +++ b/java/src/processing/mode/java/pdex/ErrorCheckerService.java @@ -148,20 +148,25 @@ public class ErrorCheckerService { PreprocessedSketch prevResult = PreprocessedSketch.empty(); while (running) { try { - requestQueue.take(); // blocking until check requested - } catch (InterruptedException e) { - running = false; - break; - } - - Messages.log("Starting error check"); - - prevResult = preprocessSketch(prevResult); - - synchronized (requestLock) { - if (requestQueue.isEmpty()) { - preprocessingTask.complete(prevResult); + try { + requestQueue.take(); // blocking until check requested + } catch (InterruptedException e) { + running = false; + break; } + + Messages.log("Starting preprocessing"); + + prevResult = preprocessSketch(prevResult); + + synchronized (requestLock) { + if (requestQueue.isEmpty()) { + Messages.log("Completing preprocessing"); + preprocessingTask.complete(prevResult); + } + } + } catch (Exception e) { + Messages.loge("problem in error checker loop", e); } }