From 747b401e875f19d83508cc39176f4c263182c515 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Wed, 18 Jun 2014 21:39:34 +0200 Subject: [PATCH] Revert "DynamicBuffer: implement BDataIO" This reverts commit 36b1f55a1841d63f0e6487e2c62c280cb24a63c4. --- headers/private/net/DynamicBuffer.h | 9 ++++----- src/kits/network/libnetapi/DynamicBuffer.cpp | 12 ++++++------ src/kits/network/libnetapi/NetBuffer.cpp | 6 +++--- 3 files changed, 13 insertions(+), 14 deletions(-) diff --git a/headers/private/net/DynamicBuffer.h b/headers/private/net/DynamicBuffer.h index 58a49d9ca2..183f88b48a 100644 --- a/headers/private/net/DynamicBuffer.h +++ b/headers/private/net/DynamicBuffer.h @@ -1,5 +1,5 @@ /* - * Copyright 2009-2014, Haiku, Inc. All Rights Reserved. + * Copyright 2009, Haiku, Inc. All Rights Reserved. * Distributed under the terms of the MIT License. * * Authors: @@ -9,11 +9,10 @@ #ifndef _DYNAMIC_BUFFER_H #define _DYNAMIC_BUFFER_H -#include #include -class DynamicBuffer : public BDataIO { +class DynamicBuffer { public: DynamicBuffer(size_t initialSize = 0); ~DynamicBuffer(); @@ -26,11 +25,11 @@ public: // Insert data at the end of the buffer. The buffer will be increased to // accomodate the data if needed. - status_t Write(const void* data, size_t size); + status_t Insert(const void* data, size_t size); // Remove data from the start of the buffer. Move the buffer start // pointer to point to the data following it. - ssize_t Read(void* data, size_t size); + status_t Remove(void* data, size_t size); // Return a pointer to the underlying buffer. Note this will not // necessarily be a pointer to the start of the allocated memory as the diff --git a/src/kits/network/libnetapi/DynamicBuffer.cpp b/src/kits/network/libnetapi/DynamicBuffer.cpp index 75f4a46458..1c63eca581 100644 --- a/src/kits/network/libnetapi/DynamicBuffer.cpp +++ b/src/kits/network/libnetapi/DynamicBuffer.cpp @@ -68,7 +68,7 @@ DynamicBuffer::InitCheck() const status_t -DynamicBuffer::Write(const void* data, size_t size) +DynamicBuffer::Insert(const void* data, size_t size) { if (fInit != B_OK) return fInit; @@ -84,14 +84,14 @@ DynamicBuffer::Write(const void* data, size_t size) } -ssize_t -DynamicBuffer::Read(void* data, size_t size) +status_t +DynamicBuffer::Remove(void* data, size_t size) { if (fInit != B_OK) return fInit; - if (size > Size()) - size = Size(); + if (fDataStart + size > fDataEnd) + return B_BUFFER_OVERFLOW; memcpy(data, fBuffer + fDataStart, size); fDataStart += size; @@ -99,7 +99,7 @@ DynamicBuffer::Read(void* data, size_t size) if (fDataStart == fDataEnd) fDataStart = fDataEnd = 0; - return size; + return B_OK; } diff --git a/src/kits/network/libnetapi/NetBuffer.cpp b/src/kits/network/libnetapi/NetBuffer.cpp index c1ccb2b932..d2a0911d15 100644 --- a/src/kits/network/libnetapi/NetBuffer.cpp +++ b/src/kits/network/libnetapi/NetBuffer.cpp @@ -54,7 +54,7 @@ BNetBuffer::BNetBuffer(BMessage* archive) : &bufferSize) == B_OK) { fImpl = new (std::nothrow) DynamicBuffer(bufferSize); if (fImpl != NULL) { - status_t result = fImpl->Write(bufferPtr, bufferSize); + status_t result = fImpl->Insert(bufferPtr, bufferSize); if (result == B_OK) fInit = fImpl->InitCheck(); else @@ -185,7 +185,7 @@ BNetBuffer::AppendString(const char* data) status_t BNetBuffer::AppendData(const void* data, size_t size) { - return fImpl->Write(data, size); + return fImpl->Insert(data, size); } @@ -332,7 +332,7 @@ BNetBuffer::RemoveString(char* data, size_t size) status_t BNetBuffer::RemoveData(void* data, size_t size) { - return fImpl->Read(data, size); + return fImpl->Remove(data, size); }