diff --git a/src/core/Matrix.c b/src/core/Matrix.c index d2e5f613..afadfba4 100644 --- a/src/core/Matrix.c +++ b/src/core/Matrix.c @@ -111,11 +111,13 @@ Matrix *matrix_new_no_extra_space(const double *Ax, const int *Ai, const int *Ap memcpy(A->x, Ax, nnz * sizeof(double)); memcpy(A->i, Ai, nnz * sizeof(int)); - for (int i = 0; i <= n_rows; ++i) + for (int i = 0; i < n_rows; ++i) { A->p[i].start = Ap[i]; A->p[i].end = Ap[i + 1]; } + A->p[n_rows].start = Ap[n_rows]; + A->p[n_rows].end = Ap[n_rows]; /* the presolver assumes that only nonzero entries are stored */ remove_explicit_zeros(A);