From c6993affc6fd77115fcf2a45ee6d8f97414f6cda Mon Sep 17 00:00:00 2001 From: hap Date: Sat, 30 Oct 2021 21:28:11 +0200 Subject: osdcore: fix buffer overflow with osd_output stack --- src/osd/osdcore.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/osd/osdcore.cpp b/src/osd/osdcore.cpp index f5860416381..cb935df1759 100644 --- a/src/osd/osdcore.cpp +++ b/src/osd/osdcore.cpp @@ -26,7 +26,7 @@ static int m_ptr = -1; void osd_output::push(osd_output *delegate) { - if (m_ptr < MAXSTACK) + if (m_ptr < MAXSTACK - 1) { delegate->m_chain = (m_ptr >= 0 ? m_stack[m_ptr] : nullptr); m_ptr++; @@ -37,7 +37,7 @@ void osd_output::push(osd_output *delegate) void osd_output::pop(osd_output *delegate) { int f = -1; - for (int i=0; i<=m_ptr; i++) + for (int i = 0; i <= m_ptr; i++) if (m_stack[i] == delegate) { f = i; -- cgit v1.2.3