aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/DecoderBuffer.cxx6
-rw-r--r--src/DecoderBuffer.hxx7
2 files changed, 13 insertions, 0 deletions
diff --git a/src/DecoderBuffer.cxx b/src/DecoderBuffer.cxx
index 78a2ccdc6..4a5125bc5 100644
--- a/src/DecoderBuffer.cxx
+++ b/src/DecoderBuffer.cxx
@@ -130,6 +130,12 @@ decoder_buffer_fill(DecoderBuffer *buffer)
return true;
}
+size_t
+decoder_buffer_available(const DecoderBuffer *buffer)
+{
+ return buffer->length - buffer->consumed;;
+}
+
const void *
decoder_buffer_read(const DecoderBuffer *buffer, size_t *length_r)
{
diff --git a/src/DecoderBuffer.hxx b/src/DecoderBuffer.hxx
index 0eaf0c4f3..65c6e0d2e 100644
--- a/src/DecoderBuffer.hxx
+++ b/src/DecoderBuffer.hxx
@@ -78,6 +78,13 @@ bool
decoder_buffer_fill(DecoderBuffer *buffer);
/**
+ * How many bytes are stored in the buffer?
+ */
+gcc_pure
+size_t
+decoder_buffer_available(const DecoderBuffer *buffer);
+
+/**
* Reads data from the buffer. This data is not yet consumed, you
* have to call decoder_buffer_consume() to do that. The returned
* buffer becomes invalid after a decoder_buffer_fill() or a