aboutsummaryrefslogtreecommitdiffstats
path: root/src/core/model/GFBuffer.cpp
diff options
context:
space:
mode:
authorsaturneric <[email protected]>2024-01-19 12:10:17 +0000
committersaturneric <[email protected]>2024-01-19 12:10:17 +0000
commitf22ceca734868a4cb946c232f661aad72da01ded (patch)
tree5d858753ca06a8dfed12a92f4762e579900cfb1f /src/core/model/GFBuffer.cpp
parentfix: slove discovered bugs (diff)
downloadGpgFrontend-f22ceca734868a4cb946c232f661aad72da01ded.tar.gz
GpgFrontend-f22ceca734868a4cb946c232f661aad72da01ded.zip
fix: slove discovered faults and bugs
Diffstat (limited to 'src/core/model/GFBuffer.cpp')
-rw-r--r--src/core/model/GFBuffer.cpp35
1 files changed, 14 insertions, 21 deletions
diff --git a/src/core/model/GFBuffer.cpp b/src/core/model/GFBuffer.cpp
index 56015613..411a5725 100644
--- a/src/core/model/GFBuffer.cpp
+++ b/src/core/model/GFBuffer.cpp
@@ -30,37 +30,30 @@
namespace GpgFrontend {
-GFBuffer::GFBuffer()
- : buffer_(SecureCreateSharedObject<std::vector<std::byte>>()) {}
+GFBuffer::GFBuffer() = default;
-GFBuffer::GFBuffer(QByteArray buffer)
- : buffer_(SecureCreateSharedObject<std::vector<std::byte>>()) {
- std::transform(buffer.begin(), buffer.end(), std::back_inserter(*buffer_),
- [](const char c) { return static_cast<std::byte>(c); });
-}
+GFBuffer::GFBuffer(QByteArray buffer) : buffer_(std::move(buffer)) {}
-GFBuffer::GFBuffer(QString str)
- : buffer_(SecureCreateSharedObject<std::vector<std::byte>>()) {
- std::transform(
- str.begin(), str.end(), std::back_inserter(*buffer_),
- [](const QChar c) { return static_cast<std::byte>(c.unicode()); });
-}
+GFBuffer::GFBuffer(const QString& str) : buffer_(str.toUtf8()) {}
auto GFBuffer::operator==(const GFBuffer& o) const -> bool {
- return equal(buffer_->begin(), buffer_->end(), o.buffer_->begin());
+ return buffer_ == o.buffer_;
}
-auto GFBuffer::Data() const -> std::byte* { return buffer_->data(); }
+auto GFBuffer::Data() const -> const char* { return buffer_.constData(); }
-void GFBuffer::Resize(size_t size) { buffer_->resize(size); }
+void GFBuffer::Resize(ssize_t size) { buffer_.resize(size); }
-auto GFBuffer::Size() const -> size_t { return buffer_->size(); }
+auto GFBuffer::Size() const -> size_t { return buffer_.size(); }
-auto GFBuffer::ConvertToQByteArray() const -> QByteArray {
- return QByteArray::fromRawData(reinterpret_cast<const char*>(Data()),
- static_cast<qsizetype>(Size()));
-}
+auto GFBuffer::ConvertToQByteArray() const -> QByteArray { return buffer_; }
auto GFBuffer::Empty() const -> bool { return this->Size() == 0; }
+void GFBuffer::Append(const GFBuffer& o) { buffer_.append(o.buffer_); }
+
+void GFBuffer::Append(const char* buffer, ssize_t size) {
+ buffer_.append(buffer, size);
+}
+
} // namespace GpgFrontend \ No newline at end of file