[FFmpeg-devel] [PATCH 2/4] avfilter/vf_swaprect: assert that rectangles are within memory

Michael Niedermayer michael at niedermayer.cc
Fri Dec 22 23:45:00 EET 2023


Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
 libavfilter/vf_swaprect.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libavfilter/vf_swaprect.c b/libavfilter/vf_swaprect.c
index 13ae149afdb..8a983b605bf 100644
--- a/libavfilter/vf_swaprect.c
+++ b/libavfilter/vf_swaprect.c
@@ -18,6 +18,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include "libavutil/avassert.h"
 #include "libavutil/avstring.h"
 #include "libavutil/eval.h"
 #include "libavutil/imgutils.h"
@@ -182,6 +183,10 @@ FF_ENABLE_DEPRECATION_WARNINGS
     y2[1] = y2[2] = AV_CEIL_RSHIFT(y2[0], s->desc->log2_chroma_h);
     y2[0] = y2[3] = y2[0];
 
+
+    av_assert0(FFMAX(x1[1], x2[1]) + pw[1] <= lw[1]);
+    av_assert0(FFMAX(y1[1], y2[1]) + ph[1] <= lh[1]);
+
     for (p = 0; p < s->nb_planes; p++) {
         if (ph[p] == ah[p] && pw[p] == aw[p]) {
             uint8_t *src = in->data[p] + y1[p] * in->linesize[p] + x1[p] * s->pixsteps[p];
-- 
2.17.1



More information about the ffmpeg-devel mailing list