diff options
author | Lukas Reschke <lukas@owncloud.com> | 2014-10-16 14:13:16 +0400 |
---|---|---|
committer | Lukas Reschke <lukas@owncloud.com> | 2014-10-16 14:25:58 +0400 |
commit | 979d2823b532446d6c5ef24717178f3533fda1c3 (patch) | |
tree | daadc1e9eef14ab8e667306c362d82e39d8d3ef3 /lib | |
parent | befbf1c15031446130cb1d253aec5f82d0060dd8 (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-x | lib/private/preview.php | 10 |
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)) { |