diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/libs/zbxcommon/misc.c | 8 | ||||
| -rw-r--r-- | src/zabbix_server/functions.c | 4 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/libs/zbxcommon/misc.c b/src/libs/zbxcommon/misc.c index 6c5ff3d4..04e27aef 100644 --- a/src/libs/zbxcommon/misc.c +++ b/src/libs/zbxcommon/misc.c @@ -124,7 +124,9 @@ int is_double(char *str) { const char *endstr = str + strlen(str); char *endptr = NULL; - double x = strtod(str, &endptr); + double x; + + x = strtod(str, &endptr); if(endptr == str || errno != 0) return FAIL; @@ -201,7 +203,11 @@ int set_result_type(AGENT_RESULT *result, int value_type, char *c) del_zeroes(c); if(is_uint(c) == SUCCEED) { +#ifdef HAVE_ATOLL SET_UI64_RESULT(result, atoll(c)); +#else + SET_UI64_RESULT(result, atol(c)); +#endif ret = SUCCEED; } } diff --git a/src/zabbix_server/functions.c b/src/zabbix_server/functions.c index 433cfc6a..aad597c0 100644 --- a/src/zabbix_server/functions.c +++ b/src/zabbix_server/functions.c @@ -836,7 +836,11 @@ void process_new_value(DB_ITEM *item, AGENT_RESULT *value) { if(is_uint(item->formula)) { +#ifdef HAVE_ATOLL SET_UI64_RESULT(value, value->ui64 * (zbx_uint64_t)atoll(item->formula)); +#else + SET_UI64_RESULT(value, value->ui64 * (zbx_uint64_t)atol(item->formula)); +#endif } else { |
