[FFmpeg-cvslog] swscale/utils: Set all threads to the same colorspace even on failure

Michael Niedermayer git at videolan.org
Mon Oct 25 16:12:16 EEST 2021


ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Fri Oct 22 23:15:59 2021 +0200| [c7699f95bb00cd7835aca4452d83320e42550a1d] | committer: Michael Niedermayer

swscale/utils: Set all threads to the same colorspace even on failure

Fixes: ./ffplay dav.y4m -vf "scale=hd1080:threads=4"
Found-by: Paul
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c7699f95bb00cd7835aca4452d83320e42550a1d
---

 libswscale/utils.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libswscale/utils.c b/libswscale/utils.c
index 367b0ea501..3752c3ec38 100644
--- a/libswscale/utils.c
+++ b/libswscale/utils.c
@@ -874,15 +874,16 @@ int sws_setColorspaceDetails(struct SwsContext *c, const int inv_table[4],
     int need_reinit = 0;
 
     if (c->nb_slice_ctx) {
+        int parent_ret = 0;
         for (int i = 0; i < c->nb_slice_ctx; i++) {
             int ret = sws_setColorspaceDetails(c->slice_ctx[i], inv_table,
                                                srcRange, table, dstRange,
                                                brightness, contrast, saturation);
             if (ret < 0)
-                return ret;
+                parent_ret = ret;
         }
 
-        return 0;
+        return parent_ret;
     }
 
     handle_formats(c);



More information about the ffmpeg-cvslog mailing list