diff --git a/lib/Service/AssistantService.php b/lib/Service/AssistantService.php index ee6e3fbd..5afad19b 100644 --- a/lib/Service/AssistantService.php +++ b/lib/Service/AssistantService.php @@ -743,7 +743,8 @@ public function saveOutputFile(string $userId, int $ocpTaskId, int $fileId): arr * @throws NotPermittedException */ private function getTargetFileName(File $file): string { - $mimeType = mime_content_type($file->fopen('rb')); + $head = fread($file->fopen('rb'), 4096); + $mimeType = (new \finfo(FILEINFO_MIME_TYPE))->buffer($head); $fileName = $file->getName(); $mimes = new \Mimey\MimeTypes; @@ -807,7 +808,8 @@ private function extractFileIdsFromTask(Task $task): array { */ public function getOutputFilePreviewFile(string $userId, int $taskId, int $fileId, ?int $x = 100, ?int $y = 100): ?array { $taskOutputFile = $this->getTaskOutputFile($userId, $taskId, $fileId); - $realMime = mime_content_type($taskOutputFile->fopen('rb')); + $head = fread($taskOutputFile->fopen('rb'), 4096); + $realMime = (new \finfo(FILEINFO_MIME_TYPE))->buffer($head); return $this->previewService->getFilePreviewFile($taskOutputFile, $x, $y, $realMime ?: null); }