Selaa lähdekoodia

CHttpJob: If no "Content-Length" header was received, read until EOF

Instead of aborting after receiving the first chunk, we have to keep
reading until EOF.
Andreas Kling 6 vuotta sitten
vanhempi
commit
273d9d6cf5
1 muutettua tiedostoa jossa 7 lisäystä ja 4 poistoa
  1. 7 4
      Libraries/LibCore/CHttpJob.cpp

+ 7 - 4
Libraries/LibCore/CHttpJob.cpp

@@ -91,10 +91,13 @@ void CHttpJob::on_socket_connected()
         }
         buffer.append(payload.pointer(), payload.size());
 
-        bool ok;
-        if (buffer.size() >= m_headers.get("Content-Length").value_or("0").to_int(ok) && ok) {
-            m_state = State::Finished;
-            break;
+        auto content_length_header = m_headers.get("Content-Length");
+        if (content_length_header.has_value()) {
+            bool ok;
+            if (buffer.size() >= content_length_header.value().to_int(ok) && ok) {
+                m_state = State::Finished;
+                break;
+            }
         }
     }