summaryrefslogtreecommitdiff
path: root/cdr/cdr_csv.c
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2007-07-18 19:47:20 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2007-07-18 19:47:20 +0000
commit81bc1d7af5886089bcd065382476f202ad7cc9ea (patch)
tree540f82bac3e6105b6fc34cd4b4613c1756a7512b /cdr/cdr_csv.c
parentb96fde308cd75eb17e5fdb0ea6d54c0f1f593ff9 (diff)
Merge in ast_strftime branch, which changes timestamps to be accurate to the microsecond, instead of only to the second
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75706 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'cdr/cdr_csv.c')
-rw-r--r--cdr/cdr_csv.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/cdr/cdr_csv.c b/cdr/cdr_csv.c
index f40f555a8..bfc509803 100644
--- a/cdr/cdr_csv.c
+++ b/cdr/cdr_csv.c
@@ -188,21 +188,15 @@ static int append_int(char *buf, int s, size_t bufsize)
static int append_date(char *buf, struct timeval tv, size_t bufsize)
{
char tmp[80] = "";
- struct tm tm;
- time_t t;
- t = tv.tv_sec;
+ struct ast_tm tm;
if (strlen(buf) > bufsize - 3)
return -1;
if (ast_tvzero(tv)) {
strncat(buf, ",", bufsize - strlen(buf) - 1);
return 0;
}
- if (usegmtime) {
- gmtime_r(&t,&tm);
- } else {
- ast_localtime(&t, &tm, NULL);
- }
- strftime(tmp, sizeof(tmp), DATE_FORMAT, &tm);
+ ast_localtime(&tv, &tm, usegmtime ? "GMT" : NULL);
+ ast_strftime(tmp, sizeof(tmp), DATE_FORMAT, &tm);
return append_string(buf, tmp, bufsize);
}