summaryrefslogtreecommitdiff
path: root/classes/diskcache.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2020-06-15 11:58:59 +0300
committerAndrew Dolgov <[email protected]>2020-06-15 11:58:59 +0300
commit6eb94f1e1397ae97ed9a0e78d0edc2d04b0915a6 (patch)
tree1e748f20241c05a270ce4324220a29a95edb5bd6 /classes/diskcache.php
parent697418f86387eba775021a745ed65603458cef2b (diff)
better support for image srcset attributes as discussed in https://community.tt-rss.org/t/problem-with-img-srcset/3519
Diffstat (limited to 'classes/diskcache.php')
-rw-r--r--classes/diskcache.php13
1 files changed, 5 insertions, 8 deletions
diff --git a/classes/diskcache.php b/classes/diskcache.php
index be1aea97f..68829b8e3 100644
--- a/classes/diskcache.php
+++ b/classes/diskcache.php
@@ -314,22 +314,19 @@ class DiskCache {
}
if ($entry->hasAttribute("srcset")) {
- $tokens = explode(",", $entry->getAttribute('srcset'));
+ $matches = RSSUtils::decode_srcset($entry->getAttribute('srcset'));
- for ($i = 0; $i < count($tokens); $i++) {
- $token = trim($tokens[$i]);
-
- list ($url, $width) = explode(" ", $token, 2);
- $cached_filename = sha1($url);
+ for ($i = 0; $i < count($matches); $i++) {
+ $cached_filename = sha1($matches[$i]["url"]);
if ($cache->exists($cached_filename)) {
- $tokens[$i] = $cache->getUrl($cached_filename) . " " . $width;
+ $matches[$i]["url"] = $cache->getUrl($cached_filename);
$need_saving = true;
}
}
- $entry->setAttribute("srcset", implode(", ", $tokens));
+ $entry->setAttribute("srcset", RSSUtils::encode_srcset($matches));
}
}