summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/handler/public.php4
-rw-r--r--include/functions2.php29
2 files changed, 18 insertions, 15 deletions
diff --git a/classes/handler/public.php b/classes/handler/public.php
index a516b6c5c..0fc8476c7 100644
--- a/classes/handler/public.php
+++ b/classes/handler/public.php
@@ -1051,9 +1051,11 @@ class Handler_Public extends Handler {
if ($hash) {
- $filename = CACHE_DIR . '/images/' . $hash . '.png';
+ $filename = CACHE_DIR . '/images/' . $hash;
if (file_exists($filename)) {
+ header("Content-Disposition: attachment; filename=\"".basename($filename)."\"");
+
/* See if we can use X-Sendfile */
$xsendfile = false;
if (function_exists('apache_get_modules') &&
diff --git a/include/functions2.php b/include/functions2.php
index b8eff56d2..2b34f287c 100644
--- a/include/functions2.php
+++ b/include/functions2.php
@@ -903,27 +903,28 @@
$entry->setAttribute('rel', 'noopener noreferrer');
}
- if ($entry->hasAttribute('src')) {
- $src = rewrite_relative_url($site_url, $entry->getAttribute('src'));
+ if ($entry->nodeName == 'img') {
+
+ if ($entry->hasAttribute('src')) {
+ $src = rewrite_relative_url($site_url, $entry->getAttribute('src'));
- $cached_filename = CACHE_DIR . '/images/' . sha1($src) . '.png';
+ $cached_filename = CACHE_DIR . '/images/' . sha1($src) . '.png';
- if (file_exists($cached_filename)) {
- $src = SELF_URL_PATH . '/public.php?op=cached_image&hash=' . sha1($src);
+ if (file_exists($cached_filename)) {
+ $src = SELF_URL_PATH . '/public.php?op=cached_image&hash=' . sha1($src) . '.png';
- if ($entry->hasAttribute('srcset')) {
- $entry->removeAttribute('srcset');
- }
+ if ($entry->hasAttribute('srcset')) {
+ $entry->removeAttribute('srcset');
+ }
- if ($entry->hasAttribute('sizes')) {
- $entry->removeAttribute('sizes');
+ if ($entry->hasAttribute('sizes')) {
+ $entry->removeAttribute('sizes');
+ }
}
- }
- $entry->setAttribute('src', $src);
- }
+ $entry->setAttribute('src', $src);
+ }
- if ($entry->nodeName == 'img') {
if ($entry->hasAttribute('src')) {
$is_https_url = parse_url($entry->getAttribute('src'), PHP_URL_SCHEME) === 'https';