From 956154e06e9130e75cac30a18dddfa04bda347ba Mon Sep 17 00:00:00 2001 From: Quentin Carbonneaux Date: Fri, 26 Feb 2016 13:55:13 -0500 Subject: dirty fix bogus bsiter() --- lisc/util.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'lisc/util.c') diff --git a/lisc/util.c b/lisc/util.c index 63c73bd..4f09d93 100644 --- a/lisc/util.c +++ b/lisc/util.c @@ -328,15 +328,16 @@ bsiter(BSet *bs, uint *elt) { uint i; - for (i = *elt; i < bsmax(bs); i++) { + for (i=*elt;; i++) { while (i < bsmax(bs) && !bs->t[i/NBit]) i = (i + NBit) & -NBit; + if (i >= bsmax(bs)) + return 0; if (bshas(bs, i)) { *elt = i; return 1; } } - return 0; } void -- cgit 1.4.1