From 46f4bd9ed451d9b93b829e53e77efaeada9d332f Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Thu, 21 Apr 2011 09:00:55 +0200 Subject: [PATCH] fix aligned_stack_memory_handler for null pointers (transplanted from 6441e8727b32c6cbb194c0ce1bbd784c2a24a2b2 ) --- Eigen/src/Core/util/Memory.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Eigen/src/Core/util/Memory.h b/Eigen/src/Core/util/Memory.h index e84c664a9..8e4eccd95 100644 --- a/Eigen/src/Core/util/Memory.h +++ b/Eigen/src/Core/util/Memory.h @@ -494,12 +494,12 @@ template class aligned_stack_memory_handler aligned_stack_memory_handler(T* ptr, size_t size, bool dealloc) : m_ptr(ptr), m_size(size), m_deallocate(dealloc) { - if(NumTraits::RequireInitialization) + if(NumTraits::RequireInitialization && m_ptr) Eigen::internal::construct_elements_of_array(m_ptr, size); } ~aligned_stack_memory_handler() { - if(NumTraits::RequireInitialization) + if(NumTraits::RequireInitialization && m_ptr) Eigen::internal::destruct_elements_of_array(m_ptr, m_size); if(m_deallocate) Eigen::internal::aligned_free(m_ptr);