aboutsummaryrefslogtreecommitdiff
path: root/builtins/array.c
diff options
context:
space:
mode:
Diffstat (limited to 'builtins/array.c')
-rw-r--r--builtins/array.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/builtins/array.c b/builtins/array.c
index 22abf976..308b4946 100644
--- a/builtins/array.c
+++ b/builtins/array.c
@@ -467,13 +467,10 @@ static void siftdown(array_t *heap, int64_t startpos, int64_t pos, closure_t com
if (cmp >= 0)
break;
- memcpy(newitem, heap->data + heap->stride*pos, item_size);
- // swap pos/parentpos:
memcpy(heap->data + heap->stride*pos, heap->data + heap->stride*parentpos, item_size);
- memcpy(heap->data + heap->stride*parentpos, newitem, item_size);
-
pos = parentpos;
}
+ memcpy(heap->data + heap->stride*pos, newitem, item_size);
}
static void siftup(array_t *heap, int64_t pos, closure_t comparison, const TypeInfo *type)