Skip to content

Commit b21ea74

Browse files
committed
Ensuring data is deallocated after a regular upload operation finishes.
1 parent 89d0d64 commit b21ea74

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

Sources/FilestackSDK/Internal/Operations/SubmitPartRegularUploadOperation.swift

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class SubmitPartRegularUploadOperation: BaseOperation<HTTPURLResponse>, SubmitPa
2323

2424
private var uploadRequest: UploadRequest?
2525

26-
private lazy var data: Data = descriptor.reader.sync {
26+
private lazy var data: Data? = descriptor.reader.sync {
2727
descriptor.reader.seek(position: offset)
2828

2929
return descriptor.reader.read(amount: size)
@@ -39,6 +39,12 @@ class SubmitPartRegularUploadOperation: BaseOperation<HTTPURLResponse>, SubmitPa
3939

4040
super.init()
4141
}
42+
43+
override func finish(with result: BaseOperation<HTTPURLResponse>.Result) {
44+
data = nil
45+
46+
super.finish(with: result)
47+
}
4248
}
4349

4450
// MARK: - Operation Overrides
@@ -97,9 +103,10 @@ private extension SubmitPartRegularUploadOperation {
97103
return
98104
}
99105

100-
guard let url = url(from: response),
106+
guard let data = data,
107+
let url = url(from: response),
101108
let headers = headers(from: response),
102-
let request = UploadService.shared.upload(data: data, to: url, method: .put, headers: headers)
109+
let request = UploadService.shared.upload(data: data, to: url, method: .put, headers: headers)
103110
else {
104111
finish(with: .failure(.unknown))
105112
return
@@ -129,6 +136,8 @@ private extension SubmitPartRegularUploadOperation {
129136
}
130137

131138
func payload() -> Data? {
139+
guard let data = data else { return nil }
140+
132141
let payload: [String: Any] = [
133142
"apikey": descriptor.config.apiKey,
134143
"uri": descriptor.uri,

0 commit comments

Comments
 (0)