diff --git a/src/mod_staticfile.c b/src/mod_staticfile.c index dee9834e..0fe9fa83 100644 --- a/src/mod_staticfile.c +++ b/src/mod_staticfile.c @@ -166,12 +166,12 @@ static int http_response_parse_range(server *srv, connection *con, plugin_data * for (s = con->request.http_range, error = 0; !error && *s && NULL != (minus = strchr(s, '-')); ) { char *err; - long la, le; + off_t la, le; if (s == minus) { /* - */ - le = strtol(s, &err, 10); + le = strtoll(s, &err, 10); if (le == 0) { /* RFC 2616 - 14.35.1 */ @@ -197,7 +197,7 @@ static int http_response_parse_range(server *srv, connection *con, plugin_data * } else if (*(minus+1) == '\0' || *(minus+1) == ',') { /* - */ - la = strtol(s, &err, 10); + la = strtoll(s, &err, 10); if (err == minus) { /* ok */ @@ -224,10 +224,10 @@ static int http_response_parse_range(server *srv, connection *con, plugin_data * } else { /* - */ - la = strtol(s, &err, 10); + la = strtoll(s, &err, 10); if (err == minus) { - le = strtol(minus+1, &err, 10); + le = strtoll(minus+1, &err, 10); /* RFC 2616 - 14.35.1 */ if (la > le) {