diff options
author | Brian Hinz <bphinz@users.sourceforge.net> | 2012-12-16 20:35:39 +0000 |
---|---|---|
committer | Brian Hinz <bphinz@users.sourceforge.net> | 2012-12-16 20:35:39 +0000 |
commit | 504d98fcaa0c9571e3fb011947fa1a1e1d263237 (patch) | |
tree | c1297c2f593f6871e2f9e9e77c12994b98e9ac0d /java/com/tigervnc/vncviewer/VncViewer.java | |
parent | d93a26d665b18b0e779c524f54c7acdc18898b94 (diff) | |
download | tigervnc-504d98fcaa0c9571e3fb011947fa1a1e1d263237.tar.gz tigervnc-504d98fcaa0c9571e3fb011947fa1a1e1d263237.zip |
Make exception handling more user friendly. Not all exceptions are 'errors' (for example, exiting the server intentionally via the window manager's logoff button).
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5021 3789f03b-4d11-0410-bbf8-ca57d06f2519
Diffstat (limited to 'java/com/tigervnc/vncviewer/VncViewer.java')
-rw-r--r-- | java/com/tigervnc/vncviewer/VncViewer.java | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/java/com/tigervnc/vncviewer/VncViewer.java b/java/com/tigervnc/vncviewer/VncViewer.java index cf38760f..ebd90b47 100644 --- a/java/com/tigervnc/vncviewer/VncViewer.java +++ b/java/com/tigervnc/vncviewer/VncViewer.java @@ -371,12 +371,18 @@ public class VncViewer extends java.applet.Applet implements Runnable while (!cc.shuttingDown) cc.processMsg(); } catch (java.lang.Exception e) { - if (cc == null || !cc.shuttingDown) { + if (e instanceof EndOfStream) { + vlog.info(e.getMessage()); + } else if (cc == null || !cc.shuttingDown) { e.printStackTrace(); - JOptionPane.showMessageDialog(null, - e.toString(), - "VNC Viewer : Error", - JOptionPane.ERROR_MESSAGE); + JOptionPane op = + new JOptionPane(e.getMessage(), JOptionPane.WARNING_MESSAGE); + JDialog dlg = op.createDialog("TigerVNC Viewer"); + ClassLoader cl = this.getClass().getClassLoader(); + ImageIcon icon = + new ImageIcon(cl.getResource("com/tigervnc/vncviewer/tigervnc.ico")); + dlg.setIconImage(icon.getImage()); + dlg.setVisible(true); } else { if (!cc.shuttingDown) vlog.info(e.toString()); |