diff options
Diffstat (limited to 'util/miscutil.c')
-rw-r--r-- | util/miscutil.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/util/miscutil.c b/util/miscutil.c index be41d93d4..376834fa6 100644 --- a/util/miscutil.c +++ b/util/miscutil.c @@ -124,10 +124,15 @@ strtimestamp( u32 stamp ) static char buffer[11+5]; struct tm *tp; time_t atime = stamp; - - tp = gmtime( &atime ); - sprintf(buffer,"%04d-%02d-%02d", - 1900+tp->tm_year, tp->tm_mon+1, tp->tm_mday ); + + if (atime < 0) { + strcpy (buffer, "????-??-??"); + } + else { + tp = gmtime( &atime ); + sprintf(buffer,"%04d-%02d-%02d", + 1900+tp->tm_year, tp->tm_mon+1, tp->tm_mday ); + } return buffer; } @@ -144,6 +149,11 @@ asctimestamp( u32 stamp ) struct tm *tp; time_t atime = stamp; + if (atime < 0) { + strcpy (buffer, "????-??-??"); + return buffer; + } + tp = localtime( &atime ); #ifdef HAVE_STRFTIME #if defined(HAVE_NL_LANGINFO) |