summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2013-03-20 10:31:37 +0100
committerAleksander Machniak <alec@alec.pl>2013-03-20 10:42:51 +0100
commit15963b7165b0acdd994767735152284289e1768d (patch)
tree0c228730c417e9c40cf600135697927cba6352d0
parenta15a59515882c5937cec8605bc73c78f76205cbf (diff)
Workaround for some versions/systems where finfo_open() with second
argument doesn't do the same as with no 2nd argument as it should
-rw-r--r--program/lib/Roundcube/rcube_mime.php11
1 files changed, 10 insertions, 1 deletions
diff --git a/program/lib/Roundcube/rcube_mime.php b/program/lib/Roundcube/rcube_mime.php
index ac4be95c0..b70d681c9 100644
--- a/program/lib/Roundcube/rcube_mime.php
+++ b/program/lib/Roundcube/rcube_mime.php
@@ -672,7 +672,16 @@ class rcube_mime
// try fileinfo extension if available
if (!$mime_type && function_exists('finfo_open')) {
- if ($finfo = finfo_open(FILEINFO_MIME, $mime_magic)) {
+ // null as a 2nd argument should be the same as no argument
+ // this however is not true on all systems/versions
+ if ($mime_magic) {
+ $finfo = finfo_open(FILEINFO_MIME, $mime_magic);
+ }
+ else {
+ $finfo = finfo_open(FILEINFO_MIME);
+ }
+
+ if ($finfo) {
if ($is_stream)
$mime_type = finfo_buffer($finfo, $path);
else