From c21f2cde3488a7db80c1cffb0da010dbecc7cf42 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Tue, 31 May 2016 10:56:53 +0200 Subject: [PATCH] bug #1238: fix SparseMatrix::sum() overload for un-compressed mode. --- Eigen/src/SparseCore/SparseRedux.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Eigen/src/SparseCore/SparseRedux.h b/Eigen/src/SparseCore/SparseRedux.h index 78fac27c8..51ed9aeb1 100644 --- a/Eigen/src/SparseCore/SparseRedux.h +++ b/Eigen/src/SparseCore/SparseRedux.h @@ -29,7 +29,10 @@ typename internal::traits >::Scalar SparseMatrix<_Scalar,_Options,_Index>::sum() const { eigen_assert(rows()>0 && cols()>0 && "you are using a non initialized matrix"); - return Matrix::Map(m_data.valuePtr(), m_data.size()).sum(); + if(this->isCompressed()) + return Matrix::Map(m_data.valuePtr(), m_data.size()).sum(); + else + return Base::sum(); } template