Skip to content

Commit 83bad6e

Browse files
authored
Check if filename contains "." before splitting it (#53)
1 parent b15ac8c commit 83bad6e

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

Sources/Request/Request/FormParam/FormParam.swift

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,25 @@ internal extension FormParam {
5454
}
5555

5656
func disposition<S>(_ fileName: S, withType mediaType: MediaType) -> Data where S: StringProtocol {
57-
let name = fileName.split(separator: ".").dropLast().joined(separator: ".")
57+
let name: String
58+
if fileName.contains(".") {
59+
name = fileName
60+
.split(separator: ".")
61+
.dropLast()
62+
.joined(separator: ".")
63+
} else {
64+
name = "\(fileName)"
65+
}
5866

5967
var contents = Data()
60-
contents.append(Data("Content-Disposition: form-data; name=\"\(name)\"; filename=\"\(fileName)\"\(breakLine)".utf8))
61-
contents.append(Data("Content-Type: \(mediaType)\(breakLine)".utf8))
68+
69+
contents.append(Data("Content-Disposition: form-data; name=\"\(name)\";".utf8))
70+
contents.append(Data("filename=\"\(fileName)\"".utf8))
71+
contents.append(Data(breakLine.utf8))
72+
73+
contents.append(Data("Content-Type: \(mediaType)".utf8))
74+
contents.append(Data(breakLine.utf8))
75+
6276
return contents
6377
}
6478

0 commit comments

Comments
 (0)