From 50729c19ebf75ab91ee285fe7af86abbdaec411c Mon Sep 17 00:00:00 2001 From: Mike Skec Date: Thu, 7 Jan 2021 08:35:25 +1100 Subject: Fixes pages not being read from cache due to differing trailing slash Also fixes favourites with the same problem --- src/cachehandler.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/cachehandler.cpp') diff --git a/src/cachehandler.cpp b/src/cachehandler.cpp index 0bd7f36..bd4c7e5 100644 --- a/src/cachehandler.cpp +++ b/src/cachehandler.cpp @@ -1,11 +1,13 @@ #include "cachehandler.hpp" #include "kristall.hpp" +#include "ioutil.hpp" #include -void CacheHandler::push(const QUrl &url, const QByteArray &body, const MimeType &mime) +void CacheHandler::push(const QUrl &u, const QByteArray &body, const MimeType &mime) { - QString urlstr = url.toString(QUrl::FullyEncoded | QUrl::RemoveFragment); + QUrl url = IoUtil::uniformUrl(u); + QString urlstr = url.toString(QUrl::FullyEncoded);; if (this->page_cache.find(urlstr) != this->page_cache.end()) { @@ -34,7 +36,7 @@ std::shared_ptr CacheHandler::find(const QString &url) std::shared_ptr CacheHandler::find(const QUrl &url) { - return this->find(url.toString(QUrl::FullyEncoded | QUrl::RemoveFragment)); + return this->find(IoUtil::uniformUrlString(url)); } bool CacheHandler::contains(const QString &url) const @@ -44,7 +46,7 @@ bool CacheHandler::contains(const QString &url) const bool CacheHandler::contains(const QUrl &url) const { - return this->contains(url.toString(QUrl::FullyEncoded | QUrl::RemoveFragment)); + return this->contains(IoUtil::uniformUrlString(url)); } CacheMap const& CacheHandler::getPages() const -- cgit v1.2.3