Fix for burst source thread join() bug. Issue #89
diff --git a/lib/misc_utils/burst_source_impl.cc b/lib/misc_utils/burst_source_impl.cc
index 336838b..76d1eaa 100644
--- a/lib/misc_utils/burst_source_impl.cc
+++ b/lib/misc_utils/burst_source_impl.cc
@@ -74,6 +74,8 @@
     bool burst_source_impl::stop()
     {
         d_finished = true;
+        d_thread->interrupt();
+        d_thread->join();
         return block::stop();
     }
 
@@ -97,8 +99,7 @@
             message_port_pub(pmt::mp("out"), burst);
         }
         d_input_file.close();
-        d_thread->interrupt();
-        d_thread->join();    
+        post(pmt::mp("system"), pmt::cons(pmt::mp("done"), pmt::from_long(1)));
     }
   } /* namespace gsm */
 } /* namespace gr */