X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/c988f1f4faa9f679f79beddf3c14676c5dcb8e28..1ba28e2b955b005ce4825fec792df17f75a8de1e:/src/src/debug.c diff --git a/src/src/debug.c b/src/src/debug.c index e3d43641b..4b08f654c 100644 --- a/src/src/debug.c +++ b/src/src/debug.c @@ -1,10 +1,10 @@ -/* $Cambridge: exim/src/src/debug.c,v 1.3 2005/01/04 10:00:42 ph10 Exp $ */ +/* $Cambridge: exim/src/src/debug.c,v 1.7 2009/11/16 19:50:36 nm4 Exp $ */ /************************************************* * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2005 */ +/* Copyright (c) University of Cambridge 1995 - 2009 */ /* See the file NOTICE for conditions of use and distribution. */ @@ -148,7 +148,7 @@ get interleaved. Since some calls to debug_printf() don't end with newline, we save up the text until we do get the newline. */ void -debug_printf(char *format, ...) +debug_printf(const char *format, ...) { va_list ap; va_start(ap, format); @@ -157,18 +157,23 @@ va_end(ap); } void -debug_vprintf(char *format, va_list ap) +debug_vprintf(const char *format, va_list ap) { if (debug_file == NULL) return; -/* Various things can be inserted at the start of a line. */ +/* Various things can be inserted at the start of a line. Don't use the +tod_stamp() function for the timestamp, because that will overwrite the +timestamp buffer, which may contain something useful. (This was a bug fix: the ++memory debugging with +timestamp did cause a problem.) */ if (debug_ptr == debug_buffer) { DEBUG(D_timestamp) { - uschar *ts = tod_stamp(tod_log_bare); - sprintf(CS debug_ptr, "%s ", ts + 11); + time_t now = time(NULL); + struct tm *t = timestamps_utc? gmtime(&now) : localtime(&now); + (void) sprintf(CS debug_ptr, "%02d:%02d:%02d ", t->tm_hour, t->tm_min, + t->tm_sec); while(*debug_ptr != 0) debug_ptr++; }