Skip to content

Commit a2b31a2

Browse files
eddieranclaude
andcommitted
fix: apply extension-based MIME validation when useTempFiles is enabled
When `useTempFiles` is true, `file.data` is an empty buffer so `fileTypeFromBuffer` returns undefined. The fallback extension-based validation was gated behind `!useTempFiles`, which meant it was skipped entirely — allowing any file type to bypass MIME restrictions. Remove the `!useTempFiles` condition so extension-based validation always runs when buffer detection fails, regardless of temp file mode. Fixes #16233 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 67c2c47 commit a2b31a2

1 file changed

Lines changed: 1 addition & 2 deletions

File tree

packages/payload/src/uploads/checkFileRestrictions.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@ export const checkFileRestrictions = async ({
5353
}: checkFileRestrictionsParams): Promise<void> => {
5454
const errors: string[] = []
5555
const { upload: uploadConfig } = collection
56-
const useTempFiles = req?.payload?.config?.upload?.useTempFiles ?? false
5756
const configMimeTypes =
5857
uploadConfig &&
5958
typeof uploadConfig === 'object' &&
@@ -105,7 +104,7 @@ export const checkFileRestrictions = async ({
105104
}
106105
}
107106

108-
if (!detected && !useTempFiles) {
107+
if (!detected) {
109108
const mimeTypeFromExtension = getFileTypeFallback(file.name).mime
110109
const extIsValid = validateMimeType(mimeTypeFromExtension, configMimeTypes)
111110

0 commit comments

Comments
 (0)