diff --git a/rts/CloneStack.c b/rts/CloneStack.c index c4fbbd00b277544ba97a9de8e4c64d72b8c02d74..9d474bfa196a134608026b5ff2779ade315c6ffc 100644 --- a/rts/CloneStack.c +++ b/rts/CloneStack.c @@ -196,6 +196,9 @@ void copyPtrsToArray(Capability *cap, StgMutArrPtrs* arr, StgStack* stack) { index++; } + // Ensure that we didn't overflow the result array + ASSERT(index-1 < arr->ptrs); + // check whether the stack ends in an underflow frame StgUnderflowFrame *frame = (StgUnderflowFrame *) (last_stack->stack + last_stack->stack_size - sizeofW(StgUnderflowFrame));