fix: prefer header mime for media extensions

This commit is contained in:
Peter Steinberger
2025-12-21 02:34:12 +01:00
parent 4671c9e672
commit b82dfe08a2
2 changed files with 42 additions and 1 deletions

View File

@@ -169,8 +169,11 @@ export async function saveMediaBuffer(
const dir = path.join(MEDIA_DIR, subdir);
await fs.mkdir(dir, { recursive: true });
const baseId = crypto.randomUUID();
const headerExt = extensionForMime(
contentType?.split(";")[0]?.trim() ?? undefined,
);
const mime = await detectMime({ buffer, headerMime: contentType });
const ext = extensionForMime(mime);
const ext = headerExt ?? extensionForMime(mime);
const id = ext ? `${baseId}${ext}` : baseId;
const dest = path.join(dir, id);
await fs.writeFile(dest, buffer);