diff options
author | Robin Gareus <robin@gareus.org> | 2015-03-22 16:01:40 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-03-22 16:12:40 +0100 |
commit | fbe673d9c7da1b0fe3966b5161c2bccca68aa4ea (patch) | |
tree | 6ec37b24e7ab6c789f92b812eacabd415f9f65f1 /libs/audiographer/src | |
parent | 39e5f7b94b6b4fe08fabae648c1e5133fd624482 (diff) |
fix #6208, negative broadcast timestamps
Diffstat (limited to 'libs/audiographer/src')
-rw-r--r-- | libs/audiographer/src/general/broadcast_info.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/audiographer/src/general/broadcast_info.cc b/libs/audiographer/src/general/broadcast_info.cc index df69ac9c79..5daee9b2ec 100644 --- a/libs/audiographer/src/general/broadcast_info.cc +++ b/libs/audiographer/src/general/broadcast_info.cc @@ -110,9 +110,13 @@ BroadcastInfo::get_time_reference () const return 0; } - int64_t ret = (uint32_t) info->time_reference_high; + if (info->time_reference_high & 0x80000000) { + return 0; + } + + int64_t ret = (uint32_t) (info->time_reference_high & 0x7fffffff); ret <<= 32; - ret |= (uint32_t) info->time_reference_low; + ret |= (uint32_t) (info->time_reference_low & 0xffffffff); return ret; } |