diff --git a/src/NFA.cc b/src/NFA.cc index 4d18f75226..43ec3d2a90 100644 --- a/src/NFA.cc +++ b/src/NFA.cc @@ -42,6 +42,8 @@ NFA_State::~NFA_State() { for ( int i = 0; i < xtions.length(); ++i ) Unref(xtions[i]); + + delete epsclosure; } void NFA_State::AddXtionsTo(NFA_state_list* ns) diff --git a/src/PersistenceSerializer.cc b/src/PersistenceSerializer.cc index 4c6f72d815..66161118a1 100644 --- a/src/PersistenceSerializer.cc +++ b/src/PersistenceSerializer.cc @@ -14,6 +14,12 @@ #include "Reporter.h" #include "Net.h" +static void persistence_serialiser_delete_func(void* val) + { + time_t* t = reinterpret_cast(val); + free(t); + } + class IncrementalWriteTimer : public Timer { public: IncrementalWriteTimer(double t, PersistenceSerializer::SerialStatus* s) @@ -36,6 +42,7 @@ void IncrementalWriteTimer::Dispatch(double t, int is_expire) PersistenceSerializer::PersistenceSerializer() { dir = 0; + files.SetDeleteFunc(persistence_serialiser_delete_func); } PersistenceSerializer::~PersistenceSerializer()