aboutsummaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
authorMark Cave-Ayland <mark.cave-ayland@ilande.co.uk>2024-08-28 13:22:55 +0100
committerPhilippe Mathieu-Daudé <philmd@linaro.org>2024-09-13 20:11:13 +0200
commitcfc65db19bc9f796f338dc7220811471b6ab2f28 (patch)
treefbb9e4c0363654bf4f7194616d85a0c78b7155e1 /util
parent7fd6866c3c1596f6ff7de9ff2fa64275627f7ffe (diff)
fifo8: honour do_pop argument in fifo8_peekpop_buf()
Pass the do_pop value from fifo8_peekpop_buf() to fifo8_peekpop_bufptr() to allow peeks to the FIFO buffer, including adjusting the skip parameter to handle the case where the internal FIFO buffer wraps around. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Octavian Purdila <tavip@google.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20240828122258.928947-7-mark.cave-ayland@ilande.co.uk> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Diffstat (limited to 'util')
-rw-r--r--util/fifo8.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/util/fifo8.c b/util/fifo8.c
index 5453cbc1b0..1031ffbe7e 100644
--- a/util/fifo8.c
+++ b/util/fifo8.c
@@ -117,7 +117,7 @@ static uint32_t fifo8_peekpop_buf(Fifo8 *fifo, uint8_t *dest, uint32_t destlen,
}
len = destlen;
- buf = fifo8_peekpop_bufptr(fifo, len, 0, &n1, true);
+ buf = fifo8_peekpop_bufptr(fifo, len, 0, &n1, do_pop);
if (dest) {
memcpy(dest, buf, n1);
}
@@ -126,7 +126,7 @@ static uint32_t fifo8_peekpop_buf(Fifo8 *fifo, uint8_t *dest, uint32_t destlen,
len -= n1;
len = MIN(len, fifo8_num_used(fifo));
if (len) {
- buf = fifo8_peekpop_bufptr(fifo, len, 0, &n2, true);
+ buf = fifo8_peekpop_bufptr(fifo, len, do_pop ? 0 : n1, &n2, do_pop);
if (dest) {
memcpy(&dest[n1], buf, n2);
}