interval-tree2 icon indicating copy to clipboard operation
interval-tree2 copied to clipboard

search not working in some cases

Open jedierikb opened this issue 9 years ago • 1 comments

I have found what appears to be a problem with this snippet:

var iTreeTest = new IntervalTree(12979);
iTreeTest.add(25908, 25916, '26a24e54ba5f4b098fb6bf797e57884a');
iTreeTest.add(25916, 25923, '6db3f7dee7014010bbd0b450109add3f');
//this returns both ranges, as expected
iTreeTest.search( 25916, 25917 );
//as does this
iTreeTest.search( 25908, 25917 );
//however, this does not... (just decremented the initial search value by 1)
iTreeTest.search( 25907, 25917 );
//nor does
iTreeTest.search( 1, 25917 );

jedierikb avatar Mar 02 '16 20:03 jedierikb

simpler:

var iTreeTest = new IntervalTree(5);
iTreeTest.add(7, 10, 'a');
iTreeTest.add(8, 11, 'b');
iTreeTest.search( 6, 9 ); 

It seems that the IntervalTree function rangeSearchneeds a check for when firstPos is -1? Something like: firstPos = Math.max( 0, firstPos ); might be needed?

jedierikb avatar Mar 02 '16 21:03 jedierikb