From cf27967af8b7624a8b36e04fdbcde9d634120dc2 Mon Sep 17 00:00:00 2001 From: Jeremy List Date: Wed, 20 May 2015 10:20:41 +0800 Subject: [PATCH] Fix infinite loop in subtree removal --- src/rtree.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rtree.js b/src/rtree.js index 11fd356..79ea167 100644 --- a/src/rtree.js +++ b/src/rtree.js @@ -131,7 +131,7 @@ var RTree = function(width){ } i -= 1; } - } else if("nodes" in ret_obj) { // We are unsplitting + } else if("nodes" in ret_obj && ret_obj.nodes.length > 0) { // We are unsplitting tree.nodes.splice(i+1, 1); // Remove unsplit node // ret_obj.nodes contains a list of elements removed from the tree so far if(tree.nodes.length > 0) @@ -708,4 +708,4 @@ RTree.Rectangle.make_MBR = function(nodes, rect) { RTree.Rectangle.expand_rectangle(rect, nodes[i]); return(rect); -}; \ No newline at end of file +};