[FFmpeg-cvslog] avfilter/vf_drawtext: only test available exceptions

Rosen Penev git at videolan.org
Thu Apr 9 02:00:01 EEST 2020


ffmpeg | branch: master | Rosen Penev <rosenp at gmail.com> | Mon Apr  6 17:38:59 2020 -0700| [8beb9e571ca6fb38d5f784bedd581398fb3da06f] | committer: Carl Eugen Hoyos

avfilter/vf_drawtext: only test available exceptions

soft float systems do not define these macros under musl.

Fixes: Ticket7102

Signed-off-by: Rosen Penev <rosenp at gmail.com>

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

 libavfilter/vf_drawtext.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavfilter/vf_drawtext.c b/libavfilter/vf_drawtext.c
index 887a686d16..abe1ca6c35 100644
--- a/libavfilter/vf_drawtext.c
+++ b/libavfilter/vf_drawtext.c
@@ -1085,10 +1085,12 @@ static int func_eval_expr_int_format(AVFilterContext *ctx, AVBPrint *bp,
 
     feclearexcept(FE_ALL_EXCEPT);
     intval = res;
+#if defined(FE_INVALID) && defined(FE_OVERFLOW) && defined(FE_UNDERFLOW)
     if ((ret = fetestexcept(FE_INVALID|FE_OVERFLOW|FE_UNDERFLOW))) {
         av_log(ctx, AV_LOG_ERROR, "Conversion of floating-point result to int failed. Control register: 0x%08x. Conversion result: %d\n", ret, intval);
         return AVERROR(EINVAL);
     }
+#endif
 
     if (argc == 3)
         av_strlcatf(fmt_str, sizeof(fmt_str), "0%u", positions);



More information about the ffmpeg-cvslog mailing list