From b6f3294987f4e1bc9ec1f2fe83a4f5570cb89284 Mon Sep 17 00:00:00 2001 From: Dan Engelbrecht Date: Mon, 29 Jan 2024 13:38:17 +0100 Subject: exception on basicfile read error (#642) * Change BasicFile::Read to throw exception like IoBuffer - Don't ASSERT on dwNumberOfBytesRead == NumberOfBytesToRead - throw exception with details instead - Use proper return type for pread() --- src/zencore/iobuffer.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/zencore/iobuffer.cpp') diff --git a/src/zencore/iobuffer.cpp b/src/zencore/iobuffer.cpp index 80d0f4ee4..54f2aaee8 100644 --- a/src/zencore/iobuffer.cpp +++ b/src/zencore/iobuffer.cpp @@ -327,8 +327,8 @@ IoBufferExtendedCore::Materialize() const } #else static_assert(sizeof(off_t) >= sizeof(uint64_t), "sizeof(off_t) does not support large files"); - int Fd = int(uintptr_t(m_FileHandle)); - int ReadResult = pread(Fd, (void*)m_DataPtr, m_DataBytes, m_FileOffset); + int Fd = int(uintptr_t(m_FileHandle)); + ssize_t ReadResult = pread(Fd, (void*)m_DataPtr, m_DataBytes, m_FileOffset); if (ReadResult != -1) { BytesRead = size_t(ReadResult); -- cgit v1.2.3