Skip to content
Snippets Groups Projects
Commit 5fd63e2d authored by Matthew Jordan's avatar Matthew Jordan
Browse files

funcs/func_cdr: Handle empty time values when extracting parsed values

When extracting timestamps that are parsed, time stamp values that are not set
(time values of 0.000000) should not actually result in a parsed string. The
value should be skipped, and the result of the CDR function should be an
empty string.

Prior to this patch, the result was fed to the time formatting, which would
result in an output of a date/time in 1969.
........

Merged revisions 407747 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@407748 65c4cc65-6c06-0410-ace0-fbb531ad65f3
parent 6f38887c
No related branches found
No related tags found
No related merge requests found
......@@ -291,9 +291,13 @@ static void cdr_read_callback(void *data, struct stasis_subscription *sub, struc
args.variable, tempbuf, ast_channel_name(payload->chan));
return;
}
fmt_time.tv_usec = tv_usec;
ast_localtime(&fmt_time, &tm, NULL);
ast_strftime(tempbuf, sizeof(tempbuf), "%Y-%m-%d %T", &tm);
if (fmt_time.tv_sec) {
fmt_time.tv_usec = tv_usec;
ast_localtime(&fmt_time, &tm, NULL);
ast_strftime(tempbuf, sizeof(tempbuf), "%Y-%m-%d %T", &tm);
} else {
tempbuf[0] = '\0';
}
} else if (!strcasecmp("disposition", args.variable)) {
int disposition;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment