[ https://issues.apache.org/jira/browse/AXIS2C-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andreas Vollmy updated AXIS2C-1508: ----------------------------------- Attachment: axis2c-src-1.6.0-7.patch I tried to fix this, by checking the first character for '-' or '+'. Actually the atoi and atol functions have the same problem. But this should only be used, if Kevins hint to use the base libc-Functions is not possible... > function axutil_strtol in util/src/types.c can't convert negative number from > string.('-32134556' will be converted to 0) > ------------------------------------------------------------------------------------------------------------------------- > > Key: AXIS2C-1508 > URL: https://issues.apache.org/jira/browse/AXIS2C-1508 > Project: Axis2-C > Issue Type: Bug > Components: util > Affects Versions: 1.6.0 > Environment: all envireonments > Reporter: zengxianrui- > Attachments: axis2c-src-1.6.0-7.patch > > Original Estimate: 1h > Remaining Estimate: 1h > > you will know this problem when you look at this function, if input parameter > s is '-1234567', then first char is '-', the for loop will breaks, the this > function return 0 to you. > the function is : > AXIS2_EXTERN int64_t AXIS2_CALL > axutil_strtol( > const char *s, > char **endptr, > int base) > { > int i; > int64_t n; > n = 0; > for (i = 0; s[i] >= '0' && s[i] <= '9'; ++i) > { > n = 10 * n + (s[i] - '0'); > } > if(endptr != NULL) > { > *endptr = (char *)(s + i); > } > return n; > } -- This message was sent by Atlassian JIRA (v6.1.5#6160) --------------------------------------------------------------------- To unsubscribe, e-mail: c-dev-unsubscr...@axis.apache.org For additional commands, e-mail: c-dev-h...@axis.apache.org