aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/highlevel.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/lib/highlevel.c b/lib/highlevel.c
index aeaa81a70..da3f4c94b 100644
--- a/lib/highlevel.c
+++ b/lib/highlevel.c
@@ -375,11 +375,16 @@ _Transfer(struct connectdata *c_conn)
if (strnequal("Content-Length", p, 14) &&
sscanf (p+14, ": %ld", &contentlength))
conn->size = contentlength;
- else if (strnequal("Content-Range", p, 13) &&
- sscanf (p+13, ": bytes %d-", &offset)) {
- if (data->resume_from == offset) {
- /* we asked for a resume and we got it */
- content_range = TRUE;
+ else if (strnequal("Content-Range", p, 13)) {
+ if (sscanf (p+13, ": bytes %d-", &offset) ||
+ sscanf (p+13, ": bytes: %d-", &offset)) {
+ /* This second format was added August 1st by Igor
+ Khristophorov since Sun's webserver JavaWebServer/1.1.1
+ obviously sends the header this way! :-( */
+ if (data->resume_from == offset) {
+ /* we asked for a resume and we got it */
+ content_range = TRUE;
+ }
}
}
else if(data->cookies &&