summaryrefslogtreecommitdiff
path: root/apt-pkg/contrib
diff options
context:
space:
mode:
authorнаб <nabijaczleweli@nabijaczleweli.xyz>2024-11-11 15:23:46 +0100
committerнаб <nabijaczleweli@nabijaczleweli.xyz>2024-11-11 15:52:43 +0100
commite59793e29ecb47c63b72de4f9d1e6d044a0ff6f2 (patch)
tree5973246672cedba43849a5291db0f9e749b14713 /apt-pkg/contrib
parentdf72264891212bc9846649f3f769a1c44fe787bf (diff)
Turn char[APT_BUFFER_SIZE] buffers into std::array<char, APT_BUFFER_SIZE>
Diffstat (limited to 'apt-pkg/contrib')
-rw-r--r--apt-pkg/contrib/fileutl.cc35
-rw-r--r--apt-pkg/contrib/hashes.cc17
2 files changed, 26 insertions, 26 deletions
diff --git a/apt-pkg/contrib/fileutl.cc b/apt-pkg/contrib/fileutl.cc
index 4ad7b4cd5..db97738e3 100644
--- a/apt-pkg/contrib/fileutl.cc
+++ b/apt-pkg/contrib/fileutl.cc
@@ -59,6 +59,7 @@
#include <unistd.h>
#include <algorithm>
+#include <array>
#include <memory>
#include <set>
@@ -1246,12 +1247,11 @@ public:
}
virtual bool InternalSkip(unsigned long long Over)
{
- unsigned long long constexpr buffersize = APT_BUFFER_SIZE;
- char buffer[buffersize];
+ std::array<char, APT_BUFFER_SIZE> buffer;
while (Over != 0)
{
- unsigned long long toread = std::min(buffersize, Over);
- if (filefd->Read(buffer, toread) == false)
+ auto toread = std::min<unsigned long long>(buffer.size(), Over);
+ if (filefd->Read(buffer.data(), toread) == false)
return filefd->FileFdError("Unable to seek ahead %llu",Over);
Over -= toread;
}
@@ -1273,10 +1273,10 @@ public:
{
unsigned long long size = 0;
unsigned long long const oldSeek = filefd->Tell();
- char ignore[APT_BUFFER_SIZE];
+ std::array<char, APT_BUFFER_SIZE> ignore;
unsigned long long read = 0;
do {
- if (filefd->Read(ignore, sizeof(ignore), &read) == false)
+ if (filefd->Read(ignore.data(), ignore.size(), &read) == false)
{
filefd->Seek(oldSeek);
return 0;
@@ -1994,7 +1994,7 @@ class APT_HIDDEN LzmaFileFdPrivate: public FileFdPrivate { /*{{{*/
struct LZMAFILE {
FILE* file;
FileFd * const filefd;
- uint8_t buffer[APT_BUFFER_SIZE];
+ std::array<unsigned char, APT_BUFFER_SIZE> buffer;
lzma_stream stream;
lzma_ret err;
bool eof;
@@ -2005,19 +2005,18 @@ class APT_HIDDEN LzmaFileFdPrivate: public FileFdPrivate { /*{{{*/
{
if (compressing == true && filefd->Failed() == false)
{
- size_t constexpr buffersize = sizeof(buffer)/sizeof(buffer[0]);
while(true)
{
- stream.avail_out = buffersize;
- stream.next_out = buffer;
+ stream.avail_out = buffer.size();
+ stream.next_out = buffer.data();
err = lzma_code(&stream, LZMA_FINISH);
if (err != LZMA_OK && err != LZMA_STREAM_END)
{
_error->Error("~LZMAFILE: Compress finalisation failed");
break;
}
- size_t const n = buffersize - stream.avail_out;
- if (n && fwrite(buffer, 1, n, file) != n)
+ size_t const n = buffer.size() - stream.avail_out;
+ if (n && fwrite(buffer.data(), 1, n, file) != n)
{
_error->Errno("~LZMAFILE",_("Write error"));
break;
@@ -2112,8 +2111,8 @@ public:
lzma->stream.avail_out = Size;
if (lzma->stream.avail_in == 0)
{
- lzma->stream.next_in = lzma->buffer;
- lzma->stream.avail_in = fread(lzma->buffer, 1, sizeof(lzma->buffer)/sizeof(lzma->buffer[0]), lzma->file);
+ lzma->stream.next_in = lzma->buffer.data();
+ lzma->stream.avail_in = fread(lzma->buffer.data(), 1, lzma->buffer.size(), lzma->file);
}
lzma->err = lzma_code(&lzma->stream, LZMA_RUN);
if (lzma->err == LZMA_STREAM_END)
@@ -2147,13 +2146,13 @@ public:
ssize_t Res;
lzma->stream.next_in = (uint8_t *)From;
lzma->stream.avail_in = Size;
- lzma->stream.next_out = lzma->buffer;
- lzma->stream.avail_out = sizeof(lzma->buffer)/sizeof(lzma->buffer[0]);
+ lzma->stream.next_out = lzma->buffer.data();
+ lzma->stream.avail_out = lzma->buffer.size();
lzma->err = lzma_code(&lzma->stream, LZMA_RUN);
if (lzma->err != LZMA_OK)
return -1;
- size_t const n = sizeof(lzma->buffer)/sizeof(lzma->buffer[0]) - lzma->stream.avail_out;
- size_t const m = (n == 0) ? 0 : fwrite(lzma->buffer, 1, n, lzma->file);
+ size_t const n = lzma->buffer.size() - lzma->stream.avail_out;
+ size_t const m = (n == 0) ? 0 : fwrite(lzma->buffer.data(), 1, n, lzma->file);
if (m != n)
{
Res = -1;
diff --git a/apt-pkg/contrib/hashes.cc b/apt-pkg/contrib/hashes.cc
index 7ff5f9e9f..0ad51fff0 100644
--- a/apt-pkg/contrib/hashes.cc
+++ b/apt-pkg/contrib/hashes.cc
@@ -21,6 +21,7 @@
#include <apt-pkg/tagfile.h>
#include <algorithm>
+#include <array>
#include <cassert>
#include <cstddef>
#include <cstdlib>
@@ -372,33 +373,33 @@ bool Hashes::Add(const unsigned char * const Data, unsigned long long const Size
}
bool Hashes::AddFD(int const Fd,unsigned long long Size)
{
- unsigned char Buf[APT_BUFFER_SIZE];
+ std::array<unsigned char, APT_BUFFER_SIZE> Buf;
bool const ToEOF = (Size == UntilEOF);
while (Size != 0 || ToEOF)
{
- decltype(Size) n = sizeof(Buf);
+ decltype(Size) n = Buf.size();
if (!ToEOF) n = std::min(Size, n);
- ssize_t const Res = read(Fd,Buf,n);
+ ssize_t const Res = read(Fd,Buf.data(),n);
if (Res < 0 || (!ToEOF && Res != (ssize_t) n)) // error, or short read
return false;
if (ToEOF && Res == 0) // EOF
break;
Size -= Res;
- if (Add(Buf, Res) == false)
+ if (Add(Buf.data(), Res) == false)
return false;
}
return true;
}
bool Hashes::AddFD(FileFd &Fd,unsigned long long Size)
{
- unsigned char Buf[APT_BUFFER_SIZE];
+ std::array<unsigned char, APT_BUFFER_SIZE> Buf;
bool const ToEOF = (Size == 0);
while (Size != 0 || ToEOF)
{
- decltype(Size) n = sizeof(Buf);
+ decltype(Size) n = Buf.size();
if (!ToEOF) n = std::min(Size, n);
decltype(Size) a = 0;
- if (Fd.Read(Buf, n, &a) == false) // error
+ if (Fd.Read(Buf.data(), n, &a) == false) // error
return false;
if (ToEOF == false)
{
@@ -408,7 +409,7 @@ bool Hashes::AddFD(FileFd &Fd,unsigned long long Size)
else if (a == 0) // EOF
break;
Size -= a;
- if (Add(Buf, a) == false)
+ if (Add(Buf.data(), a) == false)
return false;
}
return true;