[FFmpeg-devel] [PATCH 7/8] avcodec/vvcdec: schedule next stage only if the current stage reports no error

Nuo Mi nuomi2021 at gmail.com
Sat Nov 23 11:32:37 EET 2024


If the current stage reports an error, some variables may not be correctly initialized.
Scheduling the next stage could lead to the use of uninitialized variables.
---
 libavcodec/vvc/thread.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/vvc/thread.c b/libavcodec/vvc/thread.c
index f623d6a394..77778f8358 100644
--- a/libavcodec/vvc/thread.c
+++ b/libavcodec/vvc/thread.c
@@ -656,9 +656,9 @@ static void task_run_stage(VVCTask *t, VVCContext *s, VVCLocalContext *lc)
                 "frame %5d, %s(%3d, %3d) failed with %d\r\n",
                 (int)fc->decode_order, task_name[stage], t->rx, t->ry, ret);
         }
+        if (!ret)
+            task_stage_done(t, s);
     }
-
-    task_stage_done(t, s);
     return;
 }
 
-- 
2.34.1



More information about the ffmpeg-devel mailing list