khttpd: handle percent-encoded path requests

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2022-05-05 14:16:42 +03:00
parent 38a8076c19
commit e0dd95c976

View file

@ -198,7 +198,8 @@ void KHTTPD::handleRequest()
HttpHeaderParser headerparser;
headerparser.parseHeader(request);
QFileInfo pathinfo(m_directory + QLatin1Char('/') + headerparser.path());
const QString normalizedpath = QUrl::fromPercentEncoding(headerparser.path().toAscii());
QFileInfo pathinfo(m_directory + QLatin1Char('/') + normalizedpath);
// qDebug() << Q_FUNC_INFO << headerparser.path() << pathinfo.filePath();
const bool isdirectory = pathinfo.isDir();
const bool isfile = pathinfo.isFile();