diff options
author | Luigi Rizzo <rizzo@icir.org> | 2008-05-15 10:56:29 +0000 |
---|---|---|
committer | Luigi Rizzo <rizzo@icir.org> | 2008-05-15 10:56:29 +0000 |
commit | 18065a175d5012a4f1033e8c05c064007494ed3c (patch) | |
tree | fd6541cd8a4854ac1626ebbcb1eb20202e358260 /apps/app_waituntil.c | |
parent | 193d16cbde6e638c15490fc9a38dd03428c2ab12 (diff) |
Use casts or intermediate variables to remove a number
of platform/compiler-dependent warnings when handing
struct timeval fields, both reading and printing them.
It is a lost battle to handle the different ways struct timeval
is handled on the various platforms and compilers, so try
to be pragmatic and go through int/long which are universally
supported.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@116557 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_waituntil.c')
-rw-r--r-- | apps/app_waituntil.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/apps/app_waituntil.c b/apps/app_waituntil.c index 1334683ce..98345b141 100644 --- a/apps/app_waituntil.c +++ b/apps/app_waituntil.c @@ -48,6 +48,7 @@ static int waituntil_exec(struct ast_channel *chan, void *data) { int res; double fraction; + long seconds; struct timeval future = { 0, }; struct timeval tv = ast_tvnow(); int msec; @@ -58,12 +59,13 @@ static int waituntil_exec(struct ast_channel *chan, void *data) return 0; } - if (sscanf(data, "%ld%lf", (long *)&future.tv_sec, &fraction) == 0) { + if (sscanf(data, "%ld%lf", &seconds, &fraction) == 0) { ast_log(LOG_WARNING, "WaitUntil called with non-numeric argument\n"); pbx_builtin_setvar_helper(chan, "WAITUNTILSTATUS", "FAILURE"); return 0; } + future.tv_sec = seconds; future.tv_usec = fraction * 1000000; if ((msec = ast_tvdiff_ms(future, tv)) < 0) { |