sal/osl/all/log.cxx | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-)
New commits: commit f7f75d92604cb591c5a974d433651dff98708511 Author: Tor Lillqvist <t...@collabora.com> Date: Thu Jun 28 17:14:39 2018 +0300 Make the RELATIVETIMER be relative to start of the process, not to first call Make it easier to compare timing logs even if you add a SAL_DEBUG() that happens much earlier than the others, the timestamps of the others will still be comparable to those from earlier runs. Change-Id: I13872ef9112d8515e563e561f9b2a50c8510bae8 Reviewed-on: https://gerrit.libreoffice.org/56676 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <t...@collabora.com> diff --git a/sal/osl/all/log.cxx b/sal/osl/all/log.cxx index d5c77dfb5750..1a0d0ada6f1c 100644 --- a/sal/osl/all/log.cxx +++ b/sal/osl/all/log.cxx @@ -55,6 +55,17 @@ bool const sal_use_syslog = false; namespace { +struct TimeContainer +{ + TimeValue aTime; + TimeContainer() + { + osl_getSystemTime(&aTime); + } +}; + +TimeContainer aStartTime; + bool equalStrings( char const * string1, std::size_t length1, char const * string2, std::size_t length2) @@ -206,22 +217,16 @@ void maybeOutputTimestamp(std::ostringstream &s) { s << ts << '.' << milliSecs << ':'; } if (outputRelativeTimer) { - static bool beenHere = false; - static TimeValue first; - if (!beenHere) { - osl_getSystemTime(&first); - beenHere = true; - } TimeValue now; osl_getSystemTime(&now); - int seconds = now.Seconds - first.Seconds; + int seconds = now.Seconds - aStartTime.aTime.Seconds; int milliSeconds; - if (now.Nanosec < first.Nanosec) { + if (now.Nanosec < aStartTime.aTime.Nanosec) { seconds--; - milliSeconds = 1000-(first.Nanosec-now.Nanosec)/1000000; + milliSeconds = 1000-(aStartTime.aTime.Nanosec-now.Nanosec)/1000000; } else - milliSeconds = (now.Nanosec-first.Nanosec)/1000000; + milliSeconds = (now.Nanosec-aStartTime.aTime.Nanosec)/1000000; char relativeTimestamp[100]; snprintf(relativeTimestamp, sizeof(relativeTimestamp), "%d.%03d", seconds, milliSeconds); s << relativeTimestamp << ':'; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits