From 08923813cbea0207e11752c61ab13245c2b49730 Mon Sep 17 00:00:00 2001 From: Patrick LeBlanc Date: Tue, 23 Apr 2019 16:01:19 -0500 Subject: [PATCH] Fixed the error path in SMDataFile read() and write() --- utils/cloudio/SMDataFile.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/utils/cloudio/SMDataFile.cpp b/utils/cloudio/SMDataFile.cpp index af7ba19dd..da2d56a0d 100644 --- a/utils/cloudio/SMDataFile.cpp +++ b/utils/cloudio/SMDataFile.cpp @@ -48,6 +48,8 @@ ssize_t SMDataFile::pread(void *buf, off64_t offset, size_t count) ssize_t SMDataFile::read(void *buf, size_t count) { ssize_t ret = comm->pread(name(), buf, count, position); + if (ret < 0) + return ret; position += ret; return ret; } @@ -57,6 +59,8 @@ ssize_t SMDataFile::write(const void *buf, size_t count) if (openmode & O_APPEND) return comm->append(name(), buf, count); ssize_t ret = comm->pwrite(name(), buf, count, position); + if (ret < 0) + return ret; position += ret; return ret; }