Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorLukas Reschke <lukas@owncloud.com>2014-10-16 14:13:16 +0400
committerLukas Reschke <lukas@owncloud.com>2014-10-16 14:25:58 +0400
commit979d2823b532446d6c5ef24717178f3533fda1c3 (patch)
treedaadc1e9eef14ab8e667306c362d82e39d8d3ef3 /lib
parentbefbf1c15031446130cb1d253aec5f82d0060dd8 (diff)
Fix SVG icons
FIXME: Ugly hack to prevent SVG of being returned if the SVG provider is not enabled. This is required because the preview system is designed in a bad way and relies on opt-in with asterisks (i.e. image/*) which will lead to the fact that a SVG will also match the image provider.
Diffstat (limited to 'lib')
-rwxr-xr-xlib/private/preview.php10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/private/preview.php b/lib/private/preview.php
index c2e67bf6329..4980c43342c 100755
--- a/lib/private/preview.php
+++ b/lib/private/preview.php
@@ -660,6 +660,16 @@ class Preview {
self::initProviders();
}
+ // FIXME: Ugly hack to prevent SVG of being returned if the SVG
+ // provider is not enabled.
+ // This is required because the preview system is designed in a
+ // bad way and relies on opt-in with asterisks (i.e. image/*)
+ // which will lead to the fact that a SVG will also match the image
+ // provider.
+ if($mimetype === 'image/svg+xml' && !array_key_exists('/image\/svg\+xml/', self::$providers)) {
+ return false;
+ }
+
//remove last element because it has the mimetype *
foreach(self::$providers as $supportedMimetype => $provider) {
if(preg_match($supportedMimetype, $mimetype)) {