aboutsummaryrefslogtreecommitdiffstats
path: root/src/string.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/string.c')
-rw-r--r--src/string.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/string.c b/src/string.c
index c2466c48..304dec6d 100644
--- a/src/string.c
+++ b/src/string.c
@@ -93,14 +93,14 @@ serd_strtod(const char* str, size_t* end)
const double sign = read_sign(&s);
// Parse integer part
- for (; is_digit(*s); ++s) {
+ for (; is_digit((uint8_t)*s); ++s) {
result = (result * 10.0) + (*s - '0');
}
// Parse fractional part
if (*s == '.') {
double denom = 10.0;
- for (++s; is_digit(*s); ++s) {
+ for (++s; is_digit((uint8_t)*s); ++s) {
result += (*s - '0') / denom;
denom *= 10.0;
}
@@ -111,14 +111,14 @@ serd_strtod(const char* str, size_t* end)
++s;
double expt = 0.0;
double expt_sign = read_sign(&s);
- for (; is_digit(*s); ++s) {
+ for (; is_digit((uint8_t)*s); ++s) {
expt = (expt * 10.0) + (*s - '0');
}
result *= pow(10, expt * expt_sign);
}
if (end) {
- *end = s - str;
+ *end = (size_t)(s - str);
}
return result * sign;