From adc9d13de4844d4068840d4e4e9f5f6a71844bc0 Mon Sep 17 00:00:00 2001 From: Eugene Livis Date: Thu, 15 Sep 2016 14:45:53 -0400 Subject: [PATCH] Fixed a bug that was sometimes causing UI hang when saving settings --- .../AutoIngestSettingsPanel.java | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanel.java b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanel.java index fe8b81e853..78160ef17b 100644 --- a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanel.java +++ b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanel.java @@ -36,6 +36,7 @@ import java.awt.Dimension; import java.nio.file.Paths; import org.openide.util.ImageUtilities; import javax.swing.JScrollPane; +import javax.swing.SwingUtilities; import org.sleuthkit.autopsy.coreutils.FileUtil; import org.openide.windows.WindowManager; import org.sleuthkit.autopsy.coreutils.Logger; @@ -220,10 +221,12 @@ public class AutoIngestSettingsPanel extends javax.swing.JPanel { needsSaving = true; } if (needsSaving) { - JOptionPane.showMessageDialog(null, - NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.MustRestart"), - NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.restartRequiredLabel.text"), - JOptionPane.WARNING_MESSAGE); + SwingUtilities.invokeLater(() -> { + JOptionPane.showMessageDialog(null, + NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.MustRestart"), + NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.restartRequiredLabel.text"), + JOptionPane.WARNING_MESSAGE); + }); } AutoIngestUserPreferences.setMode(AutoIngestUserPreferences.SelectedMode.AUTOMATED); @@ -240,10 +243,12 @@ public class AutoIngestSettingsPanel extends javax.swing.JPanel { } else if (jRadioButtonReview.isSelected()) { String thePath = AutoIngestUserPreferences.getAutoModeResultsFolder(); if (thePath != null && 0 != outputPathTextField.getText().compareTo(thePath)) { - JOptionPane.showMessageDialog(null, - NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.MustRestart"), - NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.restartRequiredLabel.text"), - JOptionPane.WARNING_MESSAGE); + SwingUtilities.invokeLater(() -> { + JOptionPane.showMessageDialog(null, + NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.MustRestart"), + NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.restartRequiredLabel.text"), + JOptionPane.WARNING_MESSAGE); + }); } AutoIngestUserPreferences.setMode(AutoIngestUserPreferences.SelectedMode.REVIEW);