From 2630d97c625d642a205ecf00723efd8e28b9639e Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Wed, 13 Apr 2016 18:26:08 +0200 Subject: Fix detection of same matrices when both matrices are not handled by extract_data. --- Eigen/src/Core/TriangularMatrix.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Eigen/src/Core/TriangularMatrix.h') diff --git a/Eigen/src/Core/TriangularMatrix.h b/Eigen/src/Core/TriangularMatrix.h index e6d137e40..fafc2a0c6 100644 --- a/Eigen/src/Core/TriangularMatrix.h +++ b/Eigen/src/Core/TriangularMatrix.h @@ -532,7 +532,8 @@ template class TriangularViewImpl<_Mat template EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void _solve_impl(const RhsType &rhs, DstType &dst) const { - if(!(internal::is_same::value && internal::extract_data(dst) == internal::extract_data(rhs))) + const typename DstType::Scalar *dst_data = internal::extract_data(dst); + if(!(internal::is_same::value && dst_data!=0 && dst_data == internal::extract_data(rhs))) dst = rhs; this->solveInPlace(dst); } -- cgit v1.2.3