Skip to content

Commit f2aab61

Browse files
committed
Fix message numbering
1 parent 8840d01 commit f2aab61

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

Sources/StructuredWebSocketClient/URLSession+MessageTransport.swift

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ public final class URLSessionWebSocketTransport: MessageTransport {
7373
// the connected event. If no one is consuming events yet, we will
7474
// suspend until someone does.
7575
// We should be able to do this in the initializer, as nobody consumes values anyway
76-
self.readNextMessage()
76+
self.readNextMessage(1)
7777
}
7878

7979
private func onClose(closeCode: URLSessionWebSocketTask.CloseCode, reason: Data?) async {
@@ -101,7 +101,7 @@ public final class URLSessionWebSocketTransport: MessageTransport {
101101
}
102102
}
103103

104-
private func readNextMessage() {
104+
private func readNextMessage(_ number: Int) {
105105
guard wsTask.closeCode == .invalid else {
106106
return
107107
}
@@ -112,12 +112,10 @@ public final class URLSessionWebSocketTransport: MessageTransport {
112112
return
113113
}
114114
do {
115-
var count = 1
116115
let message = try result.get()
117-
let meta = MessageMetadata(number: count)
116+
let meta = MessageMetadata(number: number)
118117
await self?.events.send(.message(message, metadata: meta))
119-
count += 1
120-
self?.readNextMessage()
118+
self?.readNextMessage(number + 1)
121119
} catch {
122120
await self?.events.send(.failure(error))
123121
await self?.onClose(closeCode: .abnormalClosure, reason: Data(error.localizedDescription.utf8))

0 commit comments

Comments
 (0)