From b7716c032893f4cc6f0e635bcffc2d8bc3d956ab Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Wed, 13 Apr 2016 18:32:56 +0200 Subject: [PATCH] Fix incomplete previous patch on matrix comparision. --- Eigen/src/Core/ProductEvaluators.h | 2 +- Eigen/src/Householder/HouseholderSequence.h | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Eigen/src/Core/ProductEvaluators.h b/Eigen/src/Core/ProductEvaluators.h index bd63b87ff..2cdcf1c02 100644 --- a/Eigen/src/Core/ProductEvaluators.h +++ b/Eigen/src/Core/ProductEvaluators.h @@ -1007,7 +1007,7 @@ struct transposition_matrix_product StorageIndex j = 0; const typename Dest::Scalar *dst_data = internal::extract_data(dst); - if(!(is_same::value && dst_data == extract_data(mat))) + if(!(is_same::value && dst_data!=0 && dst_data == extract_data(mat))) dst = mat; for(Index k=(Transposed?size-1:0) ; Transposed?k>=0:k class HouseholderS { workspace.resize(rows()); Index vecs = m_length; + const typename Dest::Scalar *dst_data = internal::extract_data(dst); if( internal::is_same::type,Dest>::value - && internal::extract_data(dst) == internal::extract_data(m_vectors)) + && dst_data!=0 && dst_data == internal::extract_data(m_vectors)) { // in-place dst.diagonal().setOnes();