Browse Source

Merge pull request #5601 from owncloud/fix-mimetype-detection

Fix mimetype detection
remotes/origin/stable6
Morris Jobke 12 years ago
parent
commit
34c1512466
  1. 4
      lib/private/files/cache/cache.php
  2. 8
      lib/private/files/type/detection.php

4
lib/private/files/cache/cache.php

@ -64,6 +64,10 @@ class Cache {
* @return int
*/
public function getMimetypeId($mime) {
if (empty($mime)) {
// Can not insert empty string into Oracle NOT NULL column.
$mime = 'application/octet-stream';
}
if (empty(self::$mimetypeIds)) {
$this->loadMimetypes();
}

8
lib/private/files/type/detection.php

@ -61,8 +61,6 @@ class Detection {
* @return string
*/
public function detect($path) {
$isWrapped = (strpos($path, '://') !== false) and (substr($path, 0, 7) === 'file://');
if (@is_dir($path)) {
// directories are easy
return "httpd/unix-directory";
@ -76,9 +74,11 @@ class Detection {
$info = @strtolower(finfo_file($finfo, $path));
if ($info) {
$mimeType = substr($info, 0, strpos($info, ';'));
return empty($mimeType) ? 'application/octet-stream' : $mimeType;
}
finfo_close($finfo);
}
$isWrapped = (strpos($path, '://') !== false) and (substr($path, 0, 7) === 'file://');
if (!$isWrapped and $mimeType === 'application/octet-stream' && function_exists("mime_content_type")) {
// use mime magic extension if available
$mimeType = mime_content_type($path);
@ -94,6 +94,10 @@ class Detection {
//trim the newline
$mimeType = trim($reply);
if (empty($mimeType)) {
$mimeType = 'application/octet-stream';
}
}
return $mimeType;
}

Loading…
Cancel
Save