Correctly remove the charset from finfo mimetype
This commit is contained in:
parent
8c4e5a923a
commit
810f99c1c9
|
@ -200,7 +200,7 @@ class Detection implements IMimeTypeDetector {
|
|||
$info = @strtolower(finfo_file($finfo, $path));
|
||||
finfo_close($finfo);
|
||||
if ($info) {
|
||||
$mimeType = substr($info, 0, strpos($info, ';'));
|
||||
$mimeType = strpos($info, ';') !== false ? substr($info, 0, strpos($info, ';')) : $info;
|
||||
return empty($mimeType) ? 'application/octet-stream' : $mimeType;
|
||||
}
|
||||
|
||||
|
@ -238,7 +238,8 @@ class Detection implements IMimeTypeDetector {
|
|||
public function detectString($data) {
|
||||
if (function_exists('finfo_open') and function_exists('finfo_file')) {
|
||||
$finfo = finfo_open(FILEINFO_MIME);
|
||||
return finfo_buffer($finfo, $data);
|
||||
$info = finfo_buffer($finfo, $data);
|
||||
return strpos($info, ';') !== false ? substr($info, 0, strpos($info, ';')) : $info;
|
||||
} else {
|
||||
$tmpFile = \OC::$server->getTempManager()->getTemporaryFile();
|
||||
$fh = fopen($tmpFile, 'wb');
|
||||
|
|
|
@ -81,7 +81,7 @@ class DetectionTest extends \Test\TestCase {
|
|||
|
||||
public function testDetectString() {
|
||||
$result = $this->detection->detectString("/data/data.tar.gz");
|
||||
$expected = 'text/plain; charset=us-ascii';
|
||||
$expected = 'text/plain';
|
||||
$this->assertEquals($expected, $result);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue