This is an automated email from the ASF dual-hosted git repository.

bcall pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git


The following commit(s) were added to refs/heads/master by this push:
     new 27a8e57dd8 Fix: difference_msec epoch leak when start milestone is 
unset (#12897)
27a8e57dd8 is described below

commit 27a8e57dd806d347623667b08309f2b966826a0f
Author: Bryan Call <[email protected]>
AuthorDate: Fri Feb 20 16:04:42 2026 -0800

    Fix: difference_msec epoch leak when start milestone is unset (#12897)
    
    Check both start and end milestones in difference_msec() -- when
    ms_start was unset but ms_end was set, the delta leaked a large
    epoch-relative value (~1.7 trillion ms) instead of returning -1.
---
 include/proxy/Milestones.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/proxy/Milestones.h b/include/proxy/Milestones.h
index 622b5738ae..8f68135739 100644
--- a/include/proxy/Milestones.h
+++ b/include/proxy/Milestones.h
@@ -64,7 +64,7 @@ public:
   int64_t
   difference_msec(T ms_start, T ms_end, int64_t missing = -1) const // Return 
"missing" when Milestone is not set
   {
-    if (this->_milestones[static_cast<size_t>(ms_end)] == 0) {
+    if (this->_milestones[static_cast<size_t>(ms_start)] == 0 || 
this->_milestones[static_cast<size_t>(ms_end)] == 0) {
       return missing;
     }
     return ink_hrtime_to_msec(this->_milestones[static_cast<size_t>(ms_end)] - 
this->_milestones[static_cast<size_t>(ms_start)]);

Reply via email to