diff options
author | Kevin P. Fleming <kpfleming@digium.com> | 2006-02-23 17:13:57 +0000 |
---|---|---|
committer | Kevin P. Fleming <kpfleming@digium.com> | 2006-02-23 17:13:57 +0000 |
commit | 302c9430013d40e82a3e9925e96921ba40650db1 (patch) | |
tree | a6044b368ffd4c159c9584c7fcf17347cb8cee67 /utils.c | |
parent | c3447c7cce376c33d3ef7bf07ab5e4776f221534 (diff) |
add 'consumed' argument to ast_get_time_t, so callers can know how many characters were used in the parser
update pbx_dundi to use ast_get_time_t
eliminate some compiler warnings
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@10871 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'utils.c')
-rw-r--r-- | utils.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -1051,9 +1051,10 @@ void __ast_string_field_index_build(struct ast_string_field_mgr *mgr, /* * get values from config variables. */ -int ast_get_time_t(const char *src, time_t *dst, time_t _default) +int ast_get_time_t(const char *src, time_t *dst, time_t _default, int *consumed) { long t; + int scanned; if (dst == NULL) return -1; @@ -1064,8 +1065,10 @@ int ast_get_time_t(const char *src, time_t *dst, time_t _default) return -1; /* only integer at the moment, but one day we could accept more formats */ - if (sscanf(src, "%ld", &t) == 1) { + if (sscanf(src, "%ld%n", &t, &scanned) == 1) { *dst = t; + if (consumed) + *consumed = scanned; return 0; } else return -1; |