Skip to content

Commit 2599baa

Browse files
committed
fixup! Add IStreamReader::getSize
1 parent 3da6b40 commit 2599baa

File tree

9 files changed

+18
-10
lines changed

9 files changed

+18
-10
lines changed

src/buffer_reader.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,11 @@ zsize_t BufferReader::size() const
4444
return source.size();
4545
}
4646

47+
size_t BufferReader::getMemorySize() const
48+
{
49+
return source.size().v;
50+
}
51+
4752
offset_t BufferReader::offset() const
4853
{
4954
return offset_t((offset_type)(static_cast<const void*>(source.data(offset_t(0)))));

src/buffer_reader.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ class LIBZIM_PRIVATE_API BufferReader : public Reader {
3131
virtual ~BufferReader() {};
3232

3333
zsize_t size() const override;
34+
size_t getMemorySize() const override;
3435
offset_t offset() const override;
3536

3637
const Buffer get_buffer(offset_t offset, zsize_t size) const override;

src/cluster.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,11 +201,11 @@ size_t zim::ClusterMemorySize::get_cluster_size(const Cluster& cluster) {
201201
auto base_struct = sizeof(Cluster);
202202
auto offsets_size = sizeof(offset_t) * cluster.m_blobOffsets.size();
203203
auto readers_size = cluster.m_blobOffsets.back().v / 2;
204-
cluster.m_streamSize = cluster.m_reader->getSize();
204+
cluster.m_streamSize = cluster.m_reader->getMemorySize();
205205
cluster.m_memorySize = base_struct + offsets_size + readers_size + cluster.m_streamSize;
206206
std::cout << cluster.m_memorySize << " = base:" << base_struct <<" offsets:" << offsets_size <<" readers:" << readers_size <<" input:" << cluster.m_streamSize << std::endl;
207207
}
208-
auto streamSize = cluster.m_reader->getSize();
208+
auto streamSize = cluster.m_reader->getMemorySize();
209209
if (streamSize != cluster.m_streamSize) {
210210
std::cerr << "WARNING: stream size have changed from " << cluster.m_streamSize << " to " << streamSize << std::endl;
211211
std::cerr << "Please open an issue on https://github.com/openzim/libzim/issues with this message and the zim file you use" << std::endl;

src/decoderstreamreader.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ class DecoderStreamReader : public IStreamReader
5050
Decoder::stream_end_decode(&m_decoderState);
5151
}
5252

53-
size_t getSize() const override {
54-
return m_encodedDataReader->size().v + m_encodedDataChunk.size().v + Decoder::state_size(m_decoderState);
53+
size_t getMemorySize() const override {
54+
return m_encodedDataReader->getMemorySize() + m_encodedDataChunk.size().v + Decoder::state_size(m_decoderState);
5555
}
5656

5757
private: // functions

src/file_reader.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ class LIBZIM_PRIVATE_API BaseFileReader : public Reader {
3434
: _offset(offset), _size(size) {}
3535
~BaseFileReader() = default;
3636
zsize_t size() const override { return _size; };
37+
size_t getMemorySize() const override { return 0; };
3738
offset_t offset() const override { return _offset; };
3839

3940
virtual const Buffer get_mmap_buffer(offset_t offset,

src/istreamreader.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,8 @@ class LIBZIM_PRIVATE_API IStreamReader
5959
// Reads a blob of the specified size from the stream
6060
virtual std::unique_ptr<const Reader> sub_reader(zsize_t size);
6161

62-
// Get the total size of the reader
63-
virtual size_t getSize() const = 0;
62+
// Get the total size occuped by the reader
63+
virtual size_t getMemorySize() const = 0;
6464

6565
private: // virtual methods
6666
// Reads exactly 'nbytes' bytes into the provided buffer 'buf'

src/rawstreamreader.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ class RawStreamReader : public IStreamReader
3535
m_readerPos(0)
3636
{}
3737

38-
size_t getSize() const override {
39-
return m_reader->size().v;
38+
size_t getMemorySize() const override {
39+
return m_reader->getMemorySize();
4040
}
4141

4242
void readImpl(char* buf, zsize_t nbytes) override

src/reader.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ class LIBZIM_PRIVATE_API Reader {
3636
public:
3737
Reader() {};
3838
virtual zsize_t size() const = 0;
39+
virtual size_t getMemorySize() const = 0;
3940
virtual ~Reader() {};
4041

4142
void read(char* dest, offset_t offset, zsize_t size) const {

test/istreamreader.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ using namespace zim;
3535
class InfiniteZeroStream : public IStreamReader
3636
{
3737
void readImpl(char* buf, zim::zsize_t nbytes) override { memset(buf, 0, nbytes.v); }
38-
size_t getSize() const override {
38+
size_t getMemorySize() const override {
3939
return 0;
4040
}
4141
};
@@ -50,7 +50,7 @@ class InfiniteIncreasingStream: public IStreamReader
5050
}
5151
}
5252

53-
size_t getSize() const override {
53+
size_t getMemorySize() const override {
5454
return 0;
5555
}
5656
};

0 commit comments

Comments
 (0)