]> source.dussan.org Git - tigervnc.git/commitdiff
Fix for issue #455
authorBrian P. Hinz <bphinz@users.sf.net>
Sat, 6 May 2017 18:35:38 +0000 (14:35 -0400)
committerBrian P. Hinz <bphinz@users.sf.net>
Sat, 6 May 2017 18:37:13 +0000 (14:37 -0400)
java/com/tigervnc/vncviewer/OptionsDialog.java
java/com/tigervnc/vncviewer/Tunnel.java

index a7c8778478a6e86337cebcfdf3271496050002dc..186c1fcadebe1d5d066587ffa347752e25292049 100644 (file)
@@ -616,6 +616,8 @@ class OptionsDialog extends Dialog {
       String sshPort = viaPortInput.getText();
       String viaStr = sshUser.concat("@").concat(sshHost).concat(":").concat(sshPort);
       via.setParam(viaStr);
+    } else {
+      via.setParam("");
     }
     extSSH.setParam(extSSHCheckbox.isSelected());
     if (!sshClientInput.getText().isEmpty())
index 8d083f8e3dda2288fcf5233b7d3f9985d9a4fcf0..2e19160ae9aa4676977aebb2bb47949221ee1752 100644 (file)
@@ -58,17 +58,16 @@ public class Tunnel {
     String remoteHost;
 
     remotePort = cc.getServerPort();
-    if (tunnel.getValue() && via.getValue().isEmpty()) {
-      gatewayHost = cc.getServerName();
-      remoteHost = "localhost";
-    } else {
+    gatewayHost = cc.getServerName();
+    remoteHost = "localhost";
+    if (!via.getValue().isEmpty()) {
       gatewayHost = getSshHost();
       remoteHost = cc.getServerName();
     }
 
     String pattern = extSSHArgs.getValue();
     if (pattern == null || pattern.isEmpty()) {
-      if (tunnel.getValue())
+      if (tunnel.getValue() && via.getValue().isEmpty())
         pattern = System.getProperty("VNC_TUNNEL_CMD");
       else
         pattern = System.getProperty("VNC_VIA_CMD");
@@ -207,7 +206,7 @@ public class Tunnel {
                                       int remotePort, int localPort,
                                       String pattern) throws Exception {
     if (pattern == null || pattern.length() < 1) {
-      if (tunnel.getValue())
+      if (tunnel.getValue() && via.getValue().isEmpty())
         pattern = DEFAULT_TUNNEL_TEMPLATE;
       else
         pattern = DEFAULT_VIA_TEMPLATE;
@@ -240,7 +239,7 @@ public class Tunnel {
       if (pattern.charAt(i) == '%') {
         switch (pattern.charAt(++i)) {
         case 'H':
-          cmd += (tunnel.getValue() ? gatewayHost : remoteHost);
+          cmd += remoteHost;
              H_found = true;
           continue;
         case 'G':