summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2013-03-19 13:53:49 +0100
committerAleksander Machniak <alec@alec.pl>2013-03-19 13:53:49 +0100
commit02c9c931fe34c699ded288b449c6d2d457a41a76 (patch)
treed52cd802d0f9537d5e9b17c966a39db197308e6e
parent1e32540839683c1309db012c4d5b9aff35ec6ae3 (diff)
Make mime.types common locations list OS-aware
-rw-r--r--program/lib/Roundcube/rcube_mime.php24
1 files changed, 15 insertions, 9 deletions
diff --git a/program/lib/Roundcube/rcube_mime.php b/program/lib/Roundcube/rcube_mime.php
index d21e3b4d5..ac4be95c0 100644
--- a/program/lib/Roundcube/rcube_mime.php
+++ b/program/lib/Roundcube/rcube_mime.php
@@ -718,21 +718,27 @@ class rcube_mime
// load mapping file
$file_paths = array();
- if ($mime_types = rcube::get_instance()->config->get('mime_types'))
+ if ($mime_types = rcube::get_instance()->config->get('mime_types')) {
$file_paths[] = $mime_types;
+ }
// try common locations
- $file_paths[] = '/etc/mime.types';
- $file_paths[] = '/etc/httpd/mime.types';
- $file_paths[] = '/etc/httpd2/mime.types';
- $file_paths[] = '/etc/apache/mime.types';
- $file_paths[] = '/etc/apache2/mime.types';
- $file_paths[] = '/usr/local/etc/httpd/conf/mime.types';
- $file_paths[] = '/usr/local/etc/apache/conf/mime.types';
+ if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') {
+ $file_paths[] = 'C:/xampp/apache/conf/mime.types.';
+ }
+ else {
+ $file_paths[] = '/etc/mime.types';
+ $file_paths[] = '/etc/httpd/mime.types';
+ $file_paths[] = '/etc/httpd2/mime.types';
+ $file_paths[] = '/etc/apache/mime.types';
+ $file_paths[] = '/etc/apache2/mime.types';
+ $file_paths[] = '/usr/local/etc/httpd/conf/mime.types';
+ $file_paths[] = '/usr/local/etc/apache/conf/mime.types';
+ }
foreach ($file_paths as $fp) {
if (is_readable($fp)) {
- $lines = file($fp, FILE_IGNORE_NEW_LINES);
+ $lines = file($fp, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
break;
}
}