summaryrefslogtreecommitdiff
path: root/source/q_fifo.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/q_fifo.h')
-rw-r--r--source/q_fifo.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/source/q_fifo.h b/source/q_fifo.h
index 9d70bce..3bb5124 100644
--- a/source/q_fifo.h
+++ b/source/q_fifo.h
@@ -28,21 +28,21 @@ typedef struct {
size_t ax, ay, bs;
} fifo_t;
-static inline void *FIFO_Reserve( fifo_t *fifo, size_t *reserved ) {
+static inline void *FIFO_Reserve( fifo_t *fifo, size_t *len ) {
size_t tail;
if( fifo->bs ) {
- *reserved = fifo->ax - fifo->bs;
+ *len = fifo->ax - fifo->bs;
return fifo->data + fifo->bs;
}
tail = fifo->size - fifo->ay;
- if( fifo->ax < tail ) {
- *reserved = tail;
+ if( tail ) {
+ *len = tail;
return fifo->data + fifo->ay;
}
- *reserved = fifo->ax;
+ *len = fifo->ax;
return fifo->data;
}
@@ -55,7 +55,7 @@ static inline void FIFO_Commit( fifo_t *fifo, size_t len ) {
}
tail = fifo->size - fifo->ay;
- if( fifo->ax < tail ) {
+ if( tail ) {
fifo->ay += len;
return;
}
@@ -112,3 +112,5 @@ static inline qboolean FIFO_TryWrite( fifo_t *fifo, void *buffer, size_t len ) {
return qtrue;
}
+qboolean FIFO_ReadMessage( fifo_t *fifo, size_t msglen );
+