Commit 580de519 authored by Ronan's avatar Ronan

fix(ref_counted_statement): do not throw on stack unwinding!!!!!

parent 510164af
...@@ -35,6 +35,10 @@ public: ...@@ -35,6 +35,10 @@ public:
{ {
if (--refCount_ == 0) if (--refCount_ == 0)
{ {
std::unique_ptr<ref_counted_statement_base> deleter(this);
if (std::uncaught_exception())
return;
try try
{ {
if (tail_.empty() == false) if (tail_.empty() == false)
...@@ -46,11 +50,8 @@ public: ...@@ -46,11 +50,8 @@ public:
} }
catch (...) catch (...)
{ {
delete this;
throw; throw;
} }
delete this;
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment