]> git.ipfire.org Git - thirdparty/json-c.git/commitdiff
array_list_expand_internal needs length, not index. 27/head
authorOBI-1 <ben@wijen.net>
Wed, 9 May 2012 10:52:17 +0000 (13:52 +0300)
committerOBI-1 <ben@wijen.net>
Wed, 9 May 2012 10:52:17 +0000 (13:52 +0300)
(The current implementation will fail when adding index 65.)

arraylist.c

index 9a673d6756bef66d848489b112b0355584f2b5a1..bcc695c93cec3bc72ce6bb7276a2213ee7c24a65 100644 (file)
@@ -74,7 +74,7 @@ static int array_list_expand_internal(struct array_list *arr, int max)
 int
 array_list_put_idx(struct array_list *arr, int idx, void *data)
 {
-  if(array_list_expand_internal(arr, idx)) return -1;
+  if(array_list_expand_internal(arr, idx+1)) return -1;
   if(arr->array[idx]) arr->free_fn(arr->array[idx]);
   arr->array[idx] = data;
   if(arr->length <= idx) arr->length = idx + 1;