Browse Source

BUGFIX: Fix torrent upload issues (Web UI)

adaptive-webui-19844
Christophe Dumez 13 years ago
parent
commit
9cf37f5364
  1. 1
      Changelog
  2. 16
      src/webui/httpconnection.cpp

1
Changelog

@ -9,6 +9,7 @@ @@ -9,6 +9,7 @@
- BUGFIX: Reduce CPU usage when running Web UI
- BUGFIX: Save RSS items to disk regularly for safety
- BUGFIX: Fix ratio calculation (use all_time_download)
- BUGFIX: Fix torrent upload issues (Web UI)
- COSMETIC: Display speed at the beginning of the Window title
- COSMETIC: Several cosmetic fixes to the Web UI
- COSMETIC: Make top toolbar follow system style

16
src/webui/httpconnection.cpp

@ -78,19 +78,31 @@ void HttpConnection::handleDownloadFailure(const QString& url, @@ -78,19 +78,31 @@ void HttpConnection::handleDownloadFailure(const QString& url,
}
void HttpConnection::read() {
const QByteArray input = m_socket->readAll();
static QByteArray input;
input.append(m_socket->readAll());
if(input.size() > 100000) {
qDebug("Request too big");
m_generator.setStatusLine(400, "Bad Request");
write();
return;
}
if (!input.endsWith("\r\n\r\n")) {
// incomplete, let wait for more data
qDebug() << Q_FUNC_INFO << "Incomplete HTTP request, let's wait for more data...";
return;
}
// HTTP Request is complete, let's parse it
m_parser.write(input);
input.clear();
if(m_parser.isError()) {
m_generator.setStatusLine(400, "Bad Request");
write();
} else {
respond();
respond();
}
}

Loading…
Cancel
Save