From ea01102f1ddc204487a4b32f9c8ccc0a8565ead2 Mon Sep 17 00:00:00 2001 From: Skylot Date: Thu, 29 Mar 2018 20:41:05 +0300 Subject: [PATCH] gui: fix decompilation task on search (#235) --- .../src/main/java/jadx/gui/jobs/BackgroundJob.java | 12 ++++++++---- .../main/java/jadx/gui/ui/CommonSearchDialog.java | 5 +++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/jadx-gui/src/main/java/jadx/gui/jobs/BackgroundJob.java b/jadx-gui/src/main/java/jadx/gui/jobs/BackgroundJob.java index 097958c5..f457b87f 100644 --- a/jadx-gui/src/main/java/jadx/gui/jobs/BackgroundJob.java +++ b/jadx-gui/src/main/java/jadx/gui/jobs/BackgroundJob.java @@ -1,5 +1,6 @@ package jadx.gui.jobs; +import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; @@ -38,10 +39,13 @@ public abstract class BackgroundJob { private class ShutdownTask extends FutureTask { public ShutdownTask() { - super(() -> { - runJob(); - executor.shutdown(); - return executor.awaitTermination(1, TimeUnit.HOURS); + super(new Callable() { + @Override + public Boolean call() throws Exception { + runJob(); + executor.shutdown(); + return executor.awaitTermination(5, TimeUnit.MINUTES); + } }); } diff --git a/jadx-gui/src/main/java/jadx/gui/ui/CommonSearchDialog.java b/jadx-gui/src/main/java/jadx/gui/ui/CommonSearchDialog.java index 8acb6565..c2717d2a 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/CommonSearchDialog.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/CommonSearchDialog.java @@ -462,6 +462,11 @@ public abstract class CommonSearchDialog extends JDialog { @Override public void done() { + try { + get(); + } catch (Exception e) { + LOG.error("Load task failed", e); + } loadFinishedCommon(); loadFinished(); } -- GitLab