X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=libcitadel%2Flib%2Ftools.c;h=e07b60fee39c58afdfc1778fb9665c966fdb3086;hb=5bea7a9acf7af5c9c0fcd03a78e2f96192f92064;hp=8298d9d48c044b90a4816451a5a5e65d262a922e;hpb=4a0cdfc84be21d8bd730895c4ec2016b76702ae4;p=citadel.git diff --git a/libcitadel/lib/tools.c b/libcitadel/lib/tools.c index 8298d9d48..e07b60fee 100644 --- a/libcitadel/lib/tools.c +++ b/libcitadel/lib/tools.c @@ -228,8 +228,10 @@ int extract_int(const char *source, int parmnum) { char buf[32]; - extract_token(buf, source, parmnum, '|', sizeof buf); - return(atoi(buf)); + if (extract_token(buf, source, parmnum, '|', sizeof buf) > 0) + return(atoi(buf)); + else + return 0; } /* @@ -239,8 +241,10 @@ long extract_long(const char *source, int parmnum) { char buf[32]; - extract_token(buf, source, parmnum, '|', sizeof buf); - return(atol(buf)); + if (extract_token(buf, source, parmnum, '|', sizeof buf) > 0) + return(atol(buf)); + else + return 0; } @@ -251,8 +255,10 @@ unsigned long extract_unsigned_long(const char *source, int parmnum) { char buf[32]; - extract_token(buf, source, parmnum, '|', sizeof buf); - return strtoul(buf, NULL, 10); + if (extract_token(buf, source, parmnum, '|', sizeof buf) > 0) + return strtoul(buf, NULL, 10); + else + return 0; }