From 8a06c699d0f8d47f4fc4f259a21574b4719792b2 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Tue, 29 Jan 2019 10:27:13 +0100 Subject: bug #1669: fix PartialPivLU/inverse with zero-sized matrices. --- Eigen/src/LU/PartialPivLU.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'Eigen/src/LU/PartialPivLU.h') diff --git a/Eigen/src/LU/PartialPivLU.h b/Eigen/src/LU/PartialPivLU.h index 8726bf895..b414b5c46 100644 --- a/Eigen/src/LU/PartialPivLU.h +++ b/Eigen/src/LU/PartialPivLU.h @@ -511,7 +511,10 @@ void PartialPivLU::compute() // the row permutation is stored as int indices, so just to be sure: eigen_assert(m_lu.rows()::highest()); - m_l1_norm = m_lu.cwiseAbs().colwise().sum().maxCoeff(); + if(m_lu.cols()>0) + m_l1_norm = m_lu.cwiseAbs().colwise().sum().maxCoeff(); + else + m_l1_norm = RealScalar(0); eigen_assert(m_lu.rows() == m_lu.cols() && "PartialPivLU is only for square (and moreover invertible) matrices"); const Index size = m_lu.rows(); -- cgit v1.2.3