diff options
author | Nicolas Williams <nico@cryptonector.com> | 2017-03-01 22:45:02 -0600 |
---|---|---|
committer | Nicolas Williams <nico@cryptonector.com> | 2017-03-01 22:45:02 -0600 |
commit | 9df19f53e44e97d59688a9f3d3736ff0f9cd0222 (patch) | |
tree | 1967e0184ba82cdd75f59f6d977f4add4b9af334 | |
parent | 65cbaac34498a75973e26799dc03dd81bd27e5ad (diff) |
Fix off-by-one bug in #1108 fix
-rw-r--r-- | src/jv.c | 2 | ||||
-rw-r--r-- | tests/jq.test | 4 |
2 files changed, 3 insertions, 3 deletions
@@ -297,7 +297,7 @@ static jv jvp_array_slice(jv a, int start, int end) { return jv_array(); } - if (a.offset + start > 1 << (sizeof(a.offset) * CHAR_BIT)) { + if (a.offset + start >= 1 << (sizeof(a.offset) * CHAR_BIT)) { jv r = jv_array_sized(end - start); for (int i = start; i < end; i++) r = jv_array_append(r, jv_array_get(jv_copy(a), i)); diff --git a/tests/jq.test b/tests/jq.test index 930bf794..963595b0 100644 --- a/tests/jq.test +++ b/tests/jq.test @@ -389,9 +389,9 @@ del(.[2:4],.[0],.[-2:]) # significantly slower under valgrind than .[<large number>] = value. # # We range down rather than up so that we have just one realloc. -reduce range(70010;69999;-1) as $i ([]; .[$i] = $i)|.[69999:70003] +reduce range(65540;65536;-1) as $i ([]; .[$i] = $i)|.[65536:] null -[null,70000,70001,70002] +[null,65537,65538,65539,65540] # # Variables |