From b5b4e2fdd16b7cd5021c4942b0ba61fc67b7a6eb Mon Sep 17 00:00:00 2001 From: Martin Vierula Date: Wed, 1 Jun 2022 07:19:10 -0700 Subject: [PATCH] Fix: negative usec on log line when data type long is 32b --- CHANGES | 2 ++ apache2/msc_util.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 7ba9e74d..12efbd4c 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,8 @@ DD mmm YYYY - 2.9.x (to be released) ------------------- + * Fix: negative usec on log line when data type long is 32b + [Issue #2753 - @ABrauer-CPT, @martinhsv] * mlogc log-line parsing fails due to enhanced timestamp [Issue #2682 - @bozhinov, @ABrauer-CPT, @martinhsv] * Allow no-key, single-value JSON body diff --git a/apache2/msc_util.c b/apache2/msc_util.c index 2fdfd57c..6b6d27f9 100644 --- a/apache2/msc_util.c +++ b/apache2/msc_util.c @@ -1134,7 +1134,7 @@ char *current_logtime(apr_pool_t *mp) { apr_strftime(tstr, &len, 80, "%d/%b/%Y:%H:%M:%S.", &t); apr_snprintf(tstr + strlen(tstr), 80 - strlen(tstr), "%06ld %c%.2d%.2d", - ((long)now) % 1000000L, + (long)apr_time_usec(now), t.tm_gmtoff < 0 ? '-' : '+', t.tm_gmtoff / (60 * 60), (t.tm_gmtoff / 60) % 60); return apr_pstrdup(mp, tstr);