From 63313ad5988e9b07e4e6fb2cf0c2bde346983d59 Mon Sep 17 00:00:00 2001 From: Georgij Tsarin Date: Mon, 24 Aug 2026 18:18:33 +0300 Subject: [PATCH] Fix read buffer compaction in stream filter flush --- main/streams/filter.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/main/streams/filter.c b/main/streams/filter.c index 1be5cb1b3e50..fdc5dfc00ad2 100644 --- a/main/streams/filter.c +++ b/main/streams/filter.c @@ -506,9 +506,9 @@ PHPAPI zend_result php_stream_filter_flush(php_stream_filter *filter, bool finis /* Dump any newly flushed data to the read buffer */ if (stream->readpos > 0) { /* Back the buffer up */ - memcpy(stream->readbuf, stream->readbuf + stream->readpos, stream->writepos - stream->readpos); - stream->readpos = 0; + memmove(stream->readbuf, stream->readbuf + stream->readpos, stream->writepos - stream->readpos); stream->writepos -= stream->readpos; + stream->readpos = 0; } if (flushed_size > (stream->readbuflen - stream->writepos)) { /* Grow the buffer */