Skip to content

Commit dc13660

Browse files
authored
Merge pull request #2265 from ahoppen/flush-pie-as-string-handler
When `PipeAsStringHandler` is destroyed, ensure that we flush any pending data
2 parents 47ca76b + fbaa7ce commit dc13660

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

Sources/SwiftExtensions/PipeAsStringHandler.swift

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,14 @@ package actor PipeAsStringHandler {
2727
self.handler = handler
2828
}
2929

30+
deinit {
31+
if !buffer.isEmpty {
32+
queue.async { [handler, buffer] in
33+
handler(String(data: buffer, encoding: .utf8) ?? "<invalid UTF-8>")
34+
}
35+
}
36+
}
37+
3038
private func handleDataFromPipeImpl(_ newData: Data) {
3139
self.buffer += newData
3240
while let newlineIndex = self.buffer.firstIndex(of: UInt8(ascii: "\n")) {

0 commit comments

Comments
 (0)