--- a/sc2src/sc2mpd.cpp
+++ b/sc2src/sc2mpd.cpp
@@ -310,7 +310,7 @@
 
     m_obs.process(aMsg);
     if (aMsg.Halt()) {
-        return;
+        LOGDEB("OhmReceiverDriver::Process: halt flag set in message\n");
     }
 
     unsigned int bytes = aMsg.Audio().Bytes();
@@ -350,7 +350,7 @@
 
     AudioMessage *ap = new 
         AudioMessage(aMsg.BitDepth(), aMsg.Channels(), aMsg.Samples(),
-                     aMsg.SampleRate(), buf, allocbytes);
+                     aMsg.SampleRate(), aMsg.Halt(), buf, allocbytes);
 
     // There is nothing special we can do if put fails: no way to
     // return status. Should we just exit ?