{ | { | ||||
if( m_execute_on_destruction == true ) | if( m_execute_on_destruction == true ) | ||||
{ | { | ||||
callDeleterSafe(); | |||||
call_deleter_safe(); | |||||
} | } | ||||
} | } | ||||
private: | private: | ||||
void callDeleterSafe() noexcept | |||||
void call_deleter_safe() noexcept | |||||
{ | { | ||||
try | try | ||||
{ | { |
{ | { | ||||
if( m_execute_on_destruction == true ) | if( m_execute_on_destruction == true ) | ||||
{ | { | ||||
callDeleterSafe(); | |||||
call_deleter_safe(); | |||||
} | } | ||||
m_execute_on_destruction = ( strategy == invoke_it::again ); | m_execute_on_destruction = ( strategy == invoke_it::again ); | ||||
private: | private: | ||||
void callDeleterSafe() noexcept | |||||
void call_deleter_safe() noexcept | |||||
{ | { | ||||
try | try | ||||
{ | { |