In Fetcher serializing also callback from ccnx into executor thread
diff --git a/src/fetcher.cc b/src/fetcher.cc
index 65b0ed8..c5d348a 100644
--- a/src/fetcher.cc
+++ b/src/fetcher.cc
@@ -120,6 +120,12 @@
 void
 Fetcher::OnData (uint64_t seqno, const Ccnx::Name &name, PcoPtr data)
 {
+  m_executor.execute (bind (&Fetcher::OnData_Execute, this, seqno, name, data));
+}
+
+void
+Fetcher::OnData_Execute (uint64_t seqno, Ccnx::Name name, Ccnx::PcoPtr data)
+{
   _LOG_DEBUG (" <<< d " << name.getPartialName (0, name.size () - 1) << ", seq = " << seqno);
 
   if (m_forwardingHint == Name ())
@@ -199,6 +205,12 @@
 void
 Fetcher::OnTimeout (uint64_t seqno, const Ccnx::Name &name, const Closure &closure, Selectors selectors)
 {
+  m_executor.execute (bind (&Fetcher::OnTimeout_Execute, this, seqno, name, closure, selectors));
+}
+
+void
+Fetcher::OnTimeout_Execute (uint64_t seqno, Ccnx::Name&name, Ccnx::Closure closure, Ccnx::Selectors selectors)
+{
   _LOG_DEBUG (" <<< :( timeout " << name.getPartialName (0, name.size () - 1) << ", seq = " << seqno);
 
   // cout << "Fetcher::OnTimeout: " << name << endl;
diff --git a/src/fetcher.h b/src/fetcher.h
index 74e3ce4..850a295 100644
--- a/src/fetcher.h
+++ b/src/fetcher.h
@@ -87,8 +87,14 @@
   OnData (uint64_t seqno, const Ccnx::Name &name, Ccnx::PcoPtr data);
 
   void
+  OnData_Execute (uint64_t seqno, Ccnx::Name name, Ccnx::PcoPtr data);
+
+  void
   OnTimeout (uint64_t seqno, const Ccnx::Name &name, const Ccnx::Closure &closure, Ccnx::Selectors selectors);
 
+  void
+  OnTimeout_Execute (uint64_t seqno, Ccnx::Name&name, Ccnx::Closure closure, Ccnx::Selectors selectors);
+
 public:
   boost::intrusive::list_member_hook<> m_managerListHook;