From 7d65b4a0241eb3afeca3edef54596a4295c5f5c4 Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Wed, 18 Feb 2015 21:23:56 -0800 Subject: [PATCH] GUAC-1078: Only traverse child connection groups if defined. --- .../webapp/app/manage/directives/locationChooser.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/guacamole/src/main/webapp/app/manage/directives/locationChooser.js b/guacamole/src/main/webapp/app/manage/directives/locationChooser.js index 9f4b912d3..0789444bb 100644 --- a/guacamole/src/main/webapp/app/manage/directives/locationChooser.js +++ b/guacamole/src/main/webapp/app/manage/directives/locationChooser.js @@ -62,13 +62,22 @@ angular.module('manage').directive('locationChooser', [function locationChooser( */ var connectionGroups = {}; + /** + * Recursively traverses the given connection group and all + * children, storing each encountered connection group within the + * connectionGroups map by its identifier. + * + * @param {GroupListItem} group + * The connection group to traverse. + */ var mapConnectionGroups = function mapConnectionGroups(group) { // Map given group connectionGroups[group.identifier] = group; // Map all child groups - group.childConnectionGroups.forEach(mapConnectionGroups); + if (group.childConnectionGroups) + group.childConnectionGroups.forEach(mapConnectionGroups); };