Browse Source

fixed selection

Simon Van Mierlo 8 years ago
parent
commit
0d349caf74
2 changed files with 7 additions and 5 deletions
  1. 6 4
      client/mmm_utils.js
  2. 1 1
      utils.js

+ 6 - 4
client/mmm_utils.js

@@ -428,12 +428,12 @@ function __legalConnections(uri1,uri2,ctype)
 	3. return 'setified' concatenation of results from steps 1 and 2 */
 function __getIconsInContainer(container)
 {
-	function getExplicitContents(container, contents)
+	function getExplicitContents(container, explored)
 	{
 		if( __isConnectionType(container) )
 			return [];
         
-        if( contents.indexOf(container) > -1 ) {
+        if( explored.indexOf(container) > -1 ) {
             return []
         }
 	
@@ -451,10 +451,12 @@ function __getIconsInContainer(container)
 									return __edges[_edgeId]['end'];	
 								}).concat([linkuri]);
 				}));
+                
+        explored.push(container)
 
         for (var ct_idx in contents) {
-            var to_concat = utils.flatten(getExplicitContents(contents[ct_idx], contents));
-            contents.concat(to_concat);
+            var to_concat = utils.flatten(getExplicitContents(contents[ct_idx], explored));
+            contents = contents.concat(to_concat);
         }
         return utils.toSet(contents);
 	}

+ 1 - 1
utils.js

@@ -85,7 +85,7 @@ utils.flatten =
 	{
 		return (arrays.length == 0 ?
 					[] :
-					arrays.reduce(function(a,b) {return a.concat(b);}));
+					[].concat.apply([], arrays));
 	};