From 2a8b7594bc508a1f9af0e2fb3455c3d8dc4de006 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Fri, 4 Jun 2021 09:07:24 +0200 Subject: [PATCH] pulse-server: avoid overflow Make sure the requested bytes never go below 0. See #1258 --- src/modules/module-protocol-pulse/pulse-server.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/module-protocol-pulse/pulse-server.c b/src/modules/module-protocol-pulse/pulse-server.c index 993c23280..ddb85b0a1 100644 --- a/src/modules/module-protocol-pulse/pulse-server.c +++ b/src/modules/module-protocol-pulse/pulse-server.c @@ -5518,7 +5518,7 @@ static int handle_memblock(struct client *client, struct message *msg) SPA_MIN(msg->length, stream->attr.maxlength)); stream->write_index = index + msg->length; spa_ringbuffer_write_update(&stream->ring, stream->write_index); - stream->requested -= msg->length; + stream->requested -= SPA_MIN(msg->length, stream->requested); finish: message_free(impl, msg, false, false); return res;