diff --git a/Eigen/src/Core/SolveTriangular.h b/Eigen/src/Core/SolveTriangular.h index 71d6f8539..23df5082a 100644 --- a/Eigen/src/Core/SolveTriangular.h +++ b/Eigen/src/Core/SolveTriangular.h @@ -97,6 +97,11 @@ struct triangular_solver_selector typedef internal::gemm_blocking_space<(Rhs::Flags&RowMajorBit) ? RowMajor : ColMajor,Scalar,Scalar, Rhs::MaxRowsAtCompileTime, Rhs::MaxColsAtCompileTime, Lhs::MaxRowsAtCompileTime,4> BlockingType; + // Nothing to solve. + if (actualLhs.size() == 0 || rhs.size() == 0) { + return; + } + BlockingType blocking(rhs.rows(), rhs.cols(), size, 1, false); triangular_solve_matrix // Empty product, return early. Otherwise, we get `nullptr` use errors below when we try to access // coeffRef(0,0). - if (a_lhs.size() == 0 || a_rhs.size() == 0) { + if (lhs.size() == 0 || rhs.size() == 0) { return; }