mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-06 05:07:41 +00:00
GUAC-1335: Properly release parent balancing groups if child acquire fails.
This commit is contained in:
@@ -522,8 +522,18 @@ public abstract class AbstractGuacamoleTunnelService implements GuacamoleTunnelS
|
|||||||
// Acquire group
|
// Acquire group
|
||||||
acquire(user, connectionGroup);
|
acquire(user, connectionGroup);
|
||||||
|
|
||||||
// Acquire and connect to any child
|
// Attempt to acquire to any child
|
||||||
ModeledConnection connection = acquire(user, connections);
|
ModeledConnection connection;
|
||||||
|
try {
|
||||||
|
connection = acquire(user, connections);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Ensure connection group is always released if child acquire fails
|
||||||
|
finally {
|
||||||
|
release(user, connectionGroup);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Connect to acquired child
|
||||||
return assignGuacamoleTunnel(new ActiveConnectionRecord(user, connectionGroup, connection), info);
|
return assignGuacamoleTunnel(new ActiveConnectionRecord(user, connectionGroup, connection), info);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user