diff --git a/headers/os/package/hpkg/BufferDataOutput.h b/headers/os/package/hpkg/BufferDataOutput.h index 7499f98104..10af41c40f 100644 --- a/headers/os/package/hpkg/BufferDataOutput.h +++ b/headers/os/package/hpkg/BufferDataOutput.h @@ -21,7 +21,7 @@ public: size_t BytesWritten() const { return fBytesWritten; } - virtual ssize_t Write(const void* buffer, size_t size); + virtual status_t Write(const void* buffer, size_t size); virtual ssize_t Read(void* buffer, size_t size) { return B_NOT_SUPPORTED; } diff --git a/src/add-ons/kernel/file_systems/packagefs/package/CachedDataReader.cpp b/src/add-ons/kernel/file_systems/packagefs/package/CachedDataReader.cpp index 2a8b798164..5c57865f1c 100644 --- a/src/add-ons/kernel/file_systems/packagefs/package/CachedDataReader.cpp +++ b/src/add-ons/kernel/file_systems/packagefs/package/CachedDataReader.cpp @@ -40,9 +40,8 @@ struct CachedDataReader::PagesDataOutput : public BDataIO { { } - virtual ssize_t Write(const void* buffer, size_t size) + virtual status_t Write(const void* buffer, size_t size) { - size_t totalSize = size; while (size > 0) { if (fPageCount == 0) return B_BAD_VALUE; @@ -51,7 +50,7 @@ struct CachedDataReader::PagesDataOutput : public BDataIO { status_t error = vm_memcpy_to_physical( fPages[0]->physical_page_number * B_PAGE_SIZE + fInPageOffset, buffer, toCopy, false); - if (error < B_OK) + if (error != B_OK) return error; fInPageOffset += toCopy; @@ -65,7 +64,7 @@ struct CachedDataReader::PagesDataOutput : public BDataIO { size -= toCopy; } - return totalSize; + return B_OK; } virtual ssize_t Read(void* buffer, size_t size) @@ -161,7 +160,7 @@ CachedDataReader::ReadDataToOutput(off_t offset, size_t size, // transfer the data of the cache line status_t error = _ReadCacheLine(lineOffset, cacheLineEnd - lineOffset, offset, requestLineLength, output); - if (error < B_OK) + if (error != B_OK) return error; offset = cacheLineEnd; @@ -400,7 +399,7 @@ CachedDataReader::_WritePages(vm_page** pages, size_t pagesRelativeOffset, // unmap the page vm_put_physical_page(address, handle); - if (error < B_OK) + if (error != B_OK) return error; inPageOffset = 0; diff --git a/src/add-ons/kernel/file_systems/packagefs/package/PackageFile.cpp b/src/add-ons/kernel/file_systems/packagefs/package/PackageFile.cpp index 62ec01fda8..437408435b 100644 --- a/src/add-ons/kernel/file_systems/packagefs/package/PackageFile.cpp +++ b/src/add-ons/kernel/file_systems/packagefs/package/PackageFile.cpp @@ -37,7 +37,7 @@ public: { } - virtual ssize_t Write(const void* buffer, size_t size) + virtual status_t Write(const void* buffer, size_t size) { RETURN_ERROR(write_to_io_request(fRequest, buffer, size)); } diff --git a/src/kits/package/hpkg/BufferDataOutput.cpp b/src/kits/package/hpkg/BufferDataOutput.cpp index 4009ddf772..8ae25437a4 100644 --- a/src/kits/package/hpkg/BufferDataOutput.cpp +++ b/src/kits/package/hpkg/BufferDataOutput.cpp @@ -26,7 +26,7 @@ BBufferDataOutput::BBufferDataOutput(void* buffer, size_t size) } -ssize_t +status_t BBufferDataOutput::Write(const void* buffer, size_t size) { if (size == 0) @@ -37,7 +37,7 @@ BBufferDataOutput::Write(const void* buffer, size_t size) memcpy((uint8*)fBuffer + fBytesWritten, buffer, size); fBytesWritten += size; - return size; + return B_OK; } diff --git a/src/kits/package/hpkg/DataReader.cpp b/src/kits/package/hpkg/DataReader.cpp index 47893bb5eb..eb1a81c762 100644 --- a/src/kits/package/hpkg/DataReader.cpp +++ b/src/kits/package/hpkg/DataReader.cpp @@ -82,10 +82,7 @@ BBufferDataReader::ReadDataToOutput(off_t offset, size_t size, if (size > fSize || offset > (off_t)fSize - (off_t)size) return B_ERROR; - ssize_t result = output->Write((const uint8*)fData + offset, size); - if (result > B_OK) - return B_OK; - return result; + return output->Write((const uint8*)fData + offset, size); } diff --git a/src/kits/package/hpkg/PackageFileHeapAccessorBase.cpp b/src/kits/package/hpkg/PackageFileHeapAccessorBase.cpp index 447c375aec..3ffa2a8756 100644 --- a/src/kits/package/hpkg/PackageFileHeapAccessorBase.cpp +++ b/src/kits/package/hpkg/PackageFileHeapAccessorBase.cpp @@ -176,7 +176,7 @@ PackageFileHeapAccessorBase::ReadDataToOutput(off_t offset, size_t size, // harm. error = output->Write((char*)uncompressedDataBuffer + inChunkOffset, toWrite); - if (error < B_OK) + if (error != B_OK) return error; remainingBytes -= toWrite; diff --git a/src/kits/package/hpkg/ZlibCompressor.cpp b/src/kits/package/hpkg/ZlibCompressor.cpp index 723dbb31e3..b9e6e6fc64 100644 --- a/src/kits/package/hpkg/ZlibCompressor.cpp +++ b/src/kits/package/hpkg/ZlibCompressor.cpp @@ -84,7 +84,7 @@ ZlibCompressor::CompressNext(const void* input, size_t inputSize) if (fStream.avail_out < sizeof(outputBuffer)) { status_t error = fOutput->Write(outputBuffer, sizeof(outputBuffer) - fStream.avail_out); - if (error < B_OK) + if (error != B_OK) return error; } } @@ -111,7 +111,7 @@ ZlibCompressor::Finish() if (fStream.avail_out < sizeof(outputBuffer)) { status_t error = fOutput->Write(outputBuffer, sizeof(outputBuffer) - fStream.avail_out); - if (error < B_OK) + if (error != B_OK) return error; } diff --git a/src/kits/package/hpkg/v1/PackageDataReaderV1.cpp b/src/kits/package/hpkg/v1/PackageDataReaderV1.cpp index 48c971043c..e8d47ed468 100644 --- a/src/kits/package/hpkg/v1/PackageDataReaderV1.cpp +++ b/src/kits/package/hpkg/v1/PackageDataReaderV1.cpp @@ -126,7 +126,7 @@ public: // write to the output error = output->Write(buffer->Buffer(), toRead); - if (error < B_OK) + if (error != B_OK) return error; offset += toRead; @@ -246,7 +246,7 @@ public: size_t toCopy = std::min(size, (size_t)fChunkSize - inChunkOffset); error = output->Write( (uint8*)fUncompressBuffer->Buffer() + inChunkOffset, toCopy); - if (error < B_OK) + if (error != B_OK) return error; size -= toCopy;