Skip to content

Commit 6d666bb

Browse files
committed
Fix NPE when noConsole mode is set
The ConsolePane may be null. Let's react gracefully.
1 parent 56da364 commit 6d666bb

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

src/main/java/org/scijava/ui/swing/mdi/SwingMdiUI.java

+5-2
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
import org.scijava.ui.awt.AWTDropTargetEventDispatcher;
5151
import org.scijava.ui.swing.AbstractSwingUI;
5252
import org.scijava.ui.swing.SwingApplicationFrame;
53+
import org.scijava.ui.swing.console.SwingConsolePane;
5354
import org.scijava.ui.swing.mdi.viewer.SwingMdiDisplayWindow;
5455

5556
/**
@@ -119,13 +120,15 @@ protected void setupAppFrame() {
119120

120121
@Override
121122
protected void setupConsole() {
123+
final SwingConsolePane cPane = getConsolePane();
124+
if (cPane == null) return;
122125
final JInternalFrame frame = new JInternalFrame("Console");
123126
desktopPane.add(frame);
124127
frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
125-
frame.setContentPane(getConsolePane().getComponent());
128+
frame.setContentPane(cPane.getComponent());
126129
frame.setJMenuBar(createConsoleMenu());
127130
frame.pack();
128-
getConsolePane().setWindow(frame);
131+
cPane.setWindow(frame);
129132
}
130133

131134
// -- Helper methods --

src/main/java/org/scijava/ui/swing/sdi/SwingSDIUI.java

+5-2
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.scijava.ui.swing.AbstractSwingUI;
5050
import org.scijava.ui.swing.SwingApplicationFrame;
5151
import org.scijava.ui.swing.SwingUI;
52+
import org.scijava.ui.swing.console.SwingConsolePane;
5253
import org.scijava.ui.swing.viewer.SwingDisplayWindow;
5354

5455
/**
@@ -111,12 +112,14 @@ protected void setupAppFrame() {
111112

112113
@Override
113114
protected void setupConsole() {
115+
final SwingConsolePane cPane = getConsolePane();
116+
if (cPane == null) return;
114117
final JFrame frame = new JFrame("Console");
115118
frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
116-
frame.setContentPane(getConsolePane().getComponent());
119+
frame.setContentPane(cPane.getComponent());
117120
frame.setJMenuBar(createConsoleMenu());
118121
frame.pack();
119-
getConsolePane().setWindow(frame);
122+
cPane.setWindow(frame);
120123
}
121124

122125
}

0 commit comments

Comments
 (0)