Skip to content

Commit 239524c

Browse files
committed
desktop: don't show dialogs when headless
1 parent 80af02e commit 239524c

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

jme3-desktop/src/main/java/com/jme3/system/JmeDesktopSystem.java

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
import com.jme3.util.Screenshots;
4444
import java.awt.EventQueue;
4545
import java.awt.Graphics2D;
46+
import java.awt.GraphicsEnvironment;
4647
import java.awt.RenderingHints;
4748
import java.awt.geom.AffineTransform;
4849
import java.awt.image.AffineTransformOp;
@@ -116,19 +117,26 @@ public void writeImageFile(OutputStream outStream, String format, ByteBuffer ima
116117

117118
@Override
118119
public void showErrorDialog(String message) {
119-
final String msg = message;
120-
EventQueue.invokeLater(new Runnable() {
121-
public void run() {
122-
ErrorDialog.showDialog(msg);
123-
}
124-
});
120+
if (!GraphicsEnvironment.isHeadless()) {
121+
final String msg = message;
122+
EventQueue.invokeLater(new Runnable() {
123+
public void run() {
124+
ErrorDialog.showDialog(msg);
125+
}
126+
});
127+
} else {
128+
System.err.println("[JME ERROR] " + message);
129+
}
125130
}
126131

127132
@Override
128133
public boolean showSettingsDialog(AppSettings sourceSettings, final boolean loadFromRegistry) {
129134
if (SwingUtilities.isEventDispatchThread()) {
130135
throw new IllegalStateException("Cannot run from EDT");
131136
}
137+
if (GraphicsEnvironment.isHeadless()) {
138+
throw new IllegalStateException("Cannot show dialog in headless environment");
139+
}
132140

133141
final AppSettings settings = new AppSettings(false);
134142
settings.copyFrom(sourceSettings);

0 commit comments

Comments
 (0)