mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-07 13:41:21 +00:00
Merge branch 'ChainedTunnelReconnectFix' of git://github.com/daviddvora/guacamole-client into chained-tunnel-reconnect
This commit is contained in:
@@ -842,6 +842,12 @@ Guacamole.ChainedTunnel = function(tunnel_chain) {
|
|||||||
*/
|
*/
|
||||||
var tunnels = [];
|
var tunnels = [];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Stores a single committed tunnel once committed
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
var committedTunnel;
|
||||||
|
|
||||||
// Load all tunnels into array
|
// Load all tunnels into array
|
||||||
for (var i=0; i<arguments.length; i++)
|
for (var i=0; i<arguments.length; i++)
|
||||||
tunnels.push(arguments[i]);
|
tunnels.push(arguments[i]);
|
||||||
@@ -893,6 +899,7 @@ Guacamole.ChainedTunnel = function(tunnel_chain) {
|
|||||||
tunnel.onstatechange = chained_tunnel.onstatechange;
|
tunnel.onstatechange = chained_tunnel.onstatechange;
|
||||||
tunnel.oninstruction = chained_tunnel.oninstruction;
|
tunnel.oninstruction = chained_tunnel.oninstruction;
|
||||||
tunnel.onerror = chained_tunnel.onerror;
|
tunnel.onerror = chained_tunnel.onerror;
|
||||||
|
committedTunnel = tunnel;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Wrap own onstatechange within current tunnel
|
// Wrap own onstatechange within current tunnel
|
||||||
@@ -948,8 +955,8 @@ Guacamole.ChainedTunnel = function(tunnel_chain) {
|
|||||||
// Remember connect data
|
// Remember connect data
|
||||||
connect_data = data;
|
connect_data = data;
|
||||||
|
|
||||||
// Get first tunnel
|
// Get committed tunnel if exists or the first tunnel on the list
|
||||||
var next_tunnel = tunnels.shift();
|
var next_tunnel = committedTunnel ? committedTunnel : tunnels.shift();
|
||||||
|
|
||||||
// Attach first tunnel
|
// Attach first tunnel
|
||||||
if (next_tunnel)
|
if (next_tunnel)
|
||||||
|
Reference in New Issue
Block a user