Fix Metaproxy stops logging after check config failed MP-590
[metaproxy-moved-to-github.git] / src / thread_pool_observer.cpp
index e9dd20c..a52cd92 100644 (file)
@@ -1,5 +1,5 @@
 /* This file is part of Metaproxy.
-   Copyright (C) 2005-2012 Index Data
+   Copyright (C) Index Data
 
 Metaproxy is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free
@@ -185,9 +185,9 @@ void ThreadPoolSocketObserver::run(void *p)
             m_p->m_no_threads_waiting--;
             if (m_p->m_stop_flag)
                 break;
-            
+
             in = m_p->m_input.front();
-            m_p->m_input.pop_front(); 
+            m_p->m_input.pop_front();
             m_p->m_cond_input_full.notify_all();
         }
         IThreadPoolMsg *out = in->handle();
@@ -220,7 +220,10 @@ void ThreadPoolSocketObserver::cleanup(IThreadPoolMsg *m, void *info)
     while (it != m_p->m_input.end())
     {
         if ((*it)->cleanup(info))
+        {
+            delete *it;
             it = m_p->m_input.erase(it);
+        }
         else
             it++;
     }