Parcourir la source

Fix upload of huge files

bel il y a 10 ans
Parent
commit
4a1ffd8c13
1 fichiers modifiés avec 2 ajouts et 2 suppressions
  1. 2 2
      src/civetweb.c

+ 2 - 2
src/civetweb.c

@@ -2314,12 +2314,12 @@ int mg_read(struct mg_connection *conn, void *buf, size_t len)
         }
 
         /* Return buffered data */
-        body = conn->buf + conn->request_len + conn->consumed_content;
-        buffered_len = (int64_t)(&conn->buf[conn->data_len] - body);
+        buffered_len = (int64_t)(conn->data_len) - (int64_t)conn->request_len - conn->consumed_content;
         if (buffered_len > 0) {
             if (len64 < buffered_len) {
                 buffered_len = len64;
             }
+            body = conn->buf + conn->request_len + conn->consumed_content;
             memcpy(buf, body, (size_t) buffered_len);
             len64 -= buffered_len;
             conn->consumed_content += buffered_len;