summaryrefslogtreecommitdiff
path: root/src/codecs/source_buffer.cpp
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2024-01-31 15:24:15 +1100
committerjacqueline <me@jacqueline.id.au>2024-01-31 15:36:32 +1100
commit1494e08ea253f9a0cfdd829c2c8e6d6a6510a74c (patch)
tree7db0a25b3199b6edc51c3ebf17906e45955eb067 /src/codecs/source_buffer.cpp
parent968d545d6735cd5a5c41574248fd5aeaa81471e7 (diff)
downloadtangara-fw-1494e08ea253f9a0cfdd829c2c8e6d6a6510a74c.tar.gz
Handle read errors properly
Diffstat (limited to 'src/codecs/source_buffer.cpp')
-rw-r--r--src/codecs/source_buffer.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/codecs/source_buffer.cpp b/src/codecs/source_buffer.cpp
index 1db2e6c2..3b455038 100644
--- a/src/codecs/source_buffer.cpp
+++ b/src/codecs/source_buffer.cpp
@@ -40,8 +40,9 @@ auto SourceBuffer::Refill(IStream* src) -> bool {
}
bool eof = false;
AddBytes([&](cpp::span<std::byte> buf) -> size_t {
- size_t bytes_read = src->Read(buf);
- eof = bytes_read == 0;
+ ssize_t bytes_read = src->Read(buf);
+ // Treat read errors as EOF.
+ eof = bytes_read <= 0;
return bytes_read;
});
return eof;