diff --git a/src/statement.h b/src/statement.h index c708e7fe2..b79d9847c 100644 --- a/src/statement.h +++ b/src/statement.h @@ -122,10 +122,14 @@ class Statement : public ObjectWrap { struct Async; struct EachBaton : Baton { - EachBaton(Statement* stmt_, Handle cb_) : - Baton(stmt_, cb_) {} Persistent completed; Async* async; // Isn't deleted when the baton is deleted. + + EachBaton(Statement* stmt_, Handle cb_) : + Baton(stmt_, cb_) {} + virtual ~EachBaton() { + NanDisposePersistent(completed); + } }; struct PrepareBaton : Database::Baton {