diff options
Diffstat (limited to 'gr-uhd/lib/usrp_sink_impl.cc')
-rw-r--r-- | gr-uhd/lib/usrp_sink_impl.cc | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/gr-uhd/lib/usrp_sink_impl.cc b/gr-uhd/lib/usrp_sink_impl.cc index 316c39ae2e..413952add7 100644 --- a/gr-uhd/lib/usrp_sink_impl.cc +++ b/gr-uhd/lib/usrp_sink_impl.cc @@ -496,6 +496,8 @@ namespace gr { //the last sample of the previous burst. Drop samples until the next //length_tag is found. Notify the user of the tag gap. std::cerr << "tG" << std::flush; + //increment the timespec by the number of samples dropped + _metadata.time_spec += ::uhd::time_spec_t(0, ninput_items, _sample_rate); return ninput_items; } } @@ -572,15 +574,10 @@ namespace gr { //length_tag found; set the start of burst flag in the metadata else if(not pmt::is_null(_length_tag_key) and pmt::equal(key, _length_tag_key)) { //If there are still items left to send, the current burst has been preempted. - //Truncate the current burst by setting the end of burst flag in a mini end of - //burst packet. The next call to work will start at the new burst. Notify the - //user of the tag preemption. + //Set the items remaining counter to the new burst length. Notify the user of + //the tag preemption. if(_nitems_to_send > 0) { - ninput_items = 0; - _nitems_to_send = 0; - _metadata.end_of_burst = true; std::cerr << "tP" << std::flush; - return; } _nitems_to_send = pmt::to_long(value); _metadata.start_of_burst = true; |