fix: verify audio/video MIME types with content check (#16907)

This commit is contained in:
maruto
2026-01-28 23:58:39 +09:00
committed by GitHub
parent f54eaa1713
commit 06c7dc561e
2 changed files with 50 additions and 8 deletions
+9 -5
View File
@@ -306,11 +306,15 @@ export async function detectFileType(
if (lookedUpMimeType.startsWith('image/')) {
return 'image';
}
if (lookedUpMimeType.startsWith('audio/')) {
return 'audio';
}
if (lookedUpMimeType.startsWith('video/')) {
return 'video';
// Verify audio/video with content check to avoid MIME misidentification (#16888)
if (
lookedUpMimeType.startsWith('audio/') ||
lookedUpMimeType.startsWith('video/')
) {
if (!(await isBinaryFile(filePath))) {
return 'text';
}
return lookedUpMimeType.startsWith('audio/') ? 'audio' : 'video';
}
if (lookedUpMimeType === 'application/pdf') {
return 'pdf';