fix: make local API connection capture explicit
This commit is contained in:
@@ -49,22 +49,22 @@ private final class LocalAPIConnection {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func receive() {
|
private func receive() {
|
||||||
connection.receive(minimumIncompleteLength: 1, maximumLength: 16_384) { data, _, isComplete, error in
|
connection.receive(minimumIncompleteLength: 1, maximumLength: 16_384) { [self] data, _, isComplete, error in
|
||||||
if let data { buffer.append(data) }
|
if let data { self.buffer.append(data) }
|
||||||
|
|
||||||
if buffer.range(of: Data("\r\n\r\n".utf8)) != nil {
|
if self.buffer.range(of: Data("\r\n\r\n".utf8)) != nil {
|
||||||
handleRequest()
|
self.handleRequest()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if buffer.count > 64 * 1024 {
|
if self.buffer.count > 64 * 1024 {
|
||||||
send(.json(status: 413, reason: "Payload Too Large", ["error": "request headers are too large"]))
|
self.send(.json(status: 413, reason: "Payload Too Large", ["error": "request headers are too large"]))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if isComplete || error != nil {
|
if isComplete || error != nil {
|
||||||
connection.cancel()
|
self.connection.cancel()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
receive()
|
self.receive()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user