array_list_expand_internal needs length, not index.

(The current implementation will fail when adding index 65.)
This commit is contained in:
OBI-1
2012-05-09 13:52:17 +03:00
parent 1abaaee658
commit b6ff1c2f71

View 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;