diff mbox series

[FFmpeg-devel,07/11] doc/examples/vaapi_encode: Try to check fwrite() for failure

Message ID 20240630231306.3779027-7-michael@niedermayer.cc
State New
Headers show
Series [FFmpeg-devel,01/11] MAINTAINERS: Add Timo Rothenpieler to server admins | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 fail Make fate failed
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Michael Niedermayer June 30, 2024, 11:12 p.m. UTC
Fixes: CID1604548 Unused value

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 doc/examples/vaapi_encode.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Rémi Denis-Courmont July 1, 2024, 7:53 a.m. UTC | #1
Le 1 juillet 2024 02:12:46 GMT+03:00, Michael Niedermayer <michael@niedermayer.cc> a écrit :
>Fixes: CID1604548 Unused value
>
>Sponsored-by: Sovereign Tech Fund
>Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>---
> doc/examples/vaapi_encode.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
>diff --git a/doc/examples/vaapi_encode.c b/doc/examples/vaapi_encode.c
>index d5f472f6dd8..805db7e5fd8 100644
>--- a/doc/examples/vaapi_encode.c
>+++ b/doc/examples/vaapi_encode.c
>@@ -88,6 +88,10 @@ static int encode_write(AVCodecContext *avctx, AVFrame *frame, FILE *fout)
>         enc_pkt->stream_index = 0;
>         ret = fwrite(enc_pkt->data, enc_pkt->size, 1, fout);
>         av_packet_unref(enc_pkt);
>+        if (ret != enc_pkt->size) {
>+            ret = AVERROR(EIO);

Err, shouldn't that pass errno rather than blindly (and wrongly) assume that it's EIO? What if the error is ENOSPC?

>+            break;
>+        }
>     }
> 
> end:
diff mbox series

Patch

diff --git a/doc/examples/vaapi_encode.c b/doc/examples/vaapi_encode.c
index d5f472f6dd8..805db7e5fd8 100644
--- a/doc/examples/vaapi_encode.c
+++ b/doc/examples/vaapi_encode.c
@@ -88,6 +88,10 @@  static int encode_write(AVCodecContext *avctx, AVFrame *frame, FILE *fout)
         enc_pkt->stream_index = 0;
         ret = fwrite(enc_pkt->data, enc_pkt->size, 1, fout);
         av_packet_unref(enc_pkt);
+        if (ret != enc_pkt->size) {
+            ret = AVERROR(EIO);
+            break;
+        }
     }
 
 end: