diff --git a/src/webui/webapplication.cpp b/src/webui/webapplication.cpp index 709abd481..f8a581034 100644 --- a/src/webui/webapplication.cpp +++ b/src/webui/webapplication.cpp @@ -368,11 +368,10 @@ void WebApplication::sendFile(const QString &path) const QDateTime lastModified {QFileInfo(path).lastModified()}; // find translated file in cache - auto it = m_translatedFiles.constFind(path); - if ((it != m_translatedFiles.constEnd()) && (lastModified <= (*it).lastModified)) { - const QString mimeName {QMimeDatabase().mimeTypeForFileNameAndData(path, (*it).data).name()}; - print((*it).data, mimeName); - header(Http::HEADER_CACHE_CONTROL, getCachingInterval(mimeName)); + const auto it = m_translatedFiles.constFind(path); + if ((it != m_translatedFiles.constEnd()) && (lastModified <= it->lastModified)) { + print(it->data, it->mimeType); + header(Http::HEADER_CACHE_CONTROL, getCachingInterval(it->mimeType)); return; } @@ -400,7 +399,7 @@ void WebApplication::sendFile(const QString &path) translateDocument(dataStr); data = dataStr.toUtf8(); - m_translatedFiles[path] = {data, lastModified}; // caching translated file + m_translatedFiles[path] = {data, mimeType.name(), lastModified}; // caching translated file } print(data, mimeType.name()); diff --git a/src/webui/webapplication.h b/src/webui/webapplication.h index 435c5fcb1..b67682050 100644 --- a/src/webui/webapplication.h +++ b/src/webui/webapplication.h @@ -136,6 +136,7 @@ private: struct TranslatedFile { QByteArray data; + QString mimeType; QDateTime lastModified; }; QHash m_translatedFiles;