diff options
| -rw-r--r-- | src/core/idhash.c | 13 | ||||
| -rw-r--r-- | tests/idhash.c | 19 |
2 files changed, 6 insertions, 26 deletions
diff --git a/src/core/idhash.c b/src/core/idhash.c index c0030f76..8651a3d6 100644 --- a/src/core/idhash.c +++ b/src/core/idhash.c @@ -246,10 +246,6 @@ nni_hash_insert(nni_idhash *h, uint64_t id, void *val) { size_t index; - if ((id < h->ih_minval) || (id > h->ih_maxval)) { - return (NNG_EINVAL); - } - // Try to resize. If we can't, but we still have room, go ahead // and store it. if ((nni_hash_resize(h) != 0) && (h->ih_count >= (h->ih_cap - 1))) { @@ -270,15 +266,6 @@ nni_hash_insert(nni_idhash *h, uint64_t id, void *val) ent->ihe_skips++; index = NNI_IDHASH_NEXTPROBE(h, index); } - - // If this was the old dynamic value, just bump it. - if (h->ih_dynval == id) { - h->ih_dynval++; - // Roll over... - if (h->ih_dynval == h->ih_maxval) { - h->ih_dynval = h->ih_minval; - } - } } int diff --git a/tests/idhash.c b/tests/idhash.c index 21f66c58..e4183e98 100644 --- a/tests/idhash.c +++ b/tests/idhash.c @@ -83,14 +83,6 @@ Main({ So(ptr == NULL); }); - Convey("Range checks work", { - char *bad = "bad"; - - nni_idhash_set_limits(h, 1, 10, 1); - So(nni_idhash_insert(h, 20, bad) == - NNG_EINVAL); - }); - Convey("64-bit hash values work", { char * huge = "huge"; void * ptr = NULL; @@ -175,11 +167,12 @@ Main({ So(id == 11); }); }); - Convey("We cannot insert bogus values", { - So(nni_idhash_insert(h, 1, &expect[0]) == - NNG_EINVAL); - So(nni_idhash_insert(h, 100, &expect[0]) == - NNG_EINVAL); + Convey("We can insert outside range forcibly", { + So(nni_idhash_insert(h, 1, &expect[0]) == 0); + So(nni_idhash_insert(h, 100, &expect[0]) == 0); + So(nni_idhash_alloc(h, &id, &expect[1]) == 0); + So(id >= 10); + So(id <= 13); }); }); }); |
