aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/rfnoc/actions.cpp
diff options
context:
space:
mode:
authorsteviez <steve.czabaniuk@ni.com>2020-02-11 09:58:01 -0600
committeratrnati <54334261+atrnati@users.noreply.github.com>2020-02-18 13:36:57 -0600
commit28bf20a19c98c7e99a67d7186d539aea28133df0 (patch)
tree5c7bac0443b40e12cef5392bba8e79af0902fba5 /host/lib/rfnoc/actions.cpp
parent28ca94661c365007916e05e8c84c3eaa7563c677 (diff)
downloaduhd-28bf20a19c98c7e99a67d7186d539aea28133df0.tar.gz
uhd-28bf20a19c98c7e99a67d7186d539aea28133df0.tar.bz2
uhd-28bf20a19c98c7e99a67d7186d539aea28133df0.zip
rfnoc: actions: Fix uninitialized timestamps
tx_event_action_info objects were being created with uninitialized timestamp members which led to uhd::tx_streamer::recv_async_msg() returning with invalid timestamps
Diffstat (limited to 'host/lib/rfnoc/actions.cpp')
-rw-r--r--host/lib/rfnoc/actions.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/host/lib/rfnoc/actions.cpp b/host/lib/rfnoc/actions.cpp
index 4de05b304..ecc1b3f20 100644
--- a/host/lib/rfnoc/actions.cpp
+++ b/host/lib/rfnoc/actions.cpp
@@ -66,20 +66,24 @@ rx_event_action_info::sptr rx_event_action_info::make()
/*** TX Metadata Action Info *************************************************/
tx_event_action_info::tx_event_action_info(
- uhd::async_metadata_t::event_code_t event_code_)
- : action_info(ACTION_KEY_TX_EVENT), event_code(event_code_)
+ uhd::async_metadata_t::event_code_t event_code_, const boost::optional<uint64_t>& tsf_)
+ : action_info(ACTION_KEY_TX_EVENT), event_code(event_code_), has_tsf(tsf_)
{
+ if (has_tsf) {
+ tsf = tsf_.get();
+ }
}
tx_event_action_info::sptr tx_event_action_info::make(
- uhd::async_metadata_t::event_code_t event_code)
+ uhd::async_metadata_t::event_code_t event_code, const boost::optional<uint64_t>& tsf)
{
struct tx_event_action_info_make_shared : public tx_event_action_info
{
- tx_event_action_info_make_shared(uhd::async_metadata_t::event_code_t event_code)
- : tx_event_action_info(event_code)
+ tx_event_action_info_make_shared(uhd::async_metadata_t::event_code_t event_code,
+ const boost::optional<uint64_t>& tsf)
+ : tx_event_action_info(event_code, tsf)
{
}
};
- return std::make_shared<tx_event_action_info_make_shared>(event_code);
+ return std::make_shared<tx_event_action_info_make_shared>(event_code, tsf);
}