summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2022-06-13 23:02:04 +0200
committerMarton Balint <cus@passwd.hu>2022-06-20 23:51:54 +0200
commitc11fb467312716f15247397ebafc0093d5e7cab0 (patch)
tree63bcf06ee922e400a927de58ae80c5ff79b2b7d2
parentfe662516a526c3821b77057c5572bc7f83c21b60 (diff)
fftools/ffprobe: report avio errors
Signed-off-by: Marton Balint <cus@passwd.hu>
-rw-r--r--fftools/ffprobe.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c
index 4e2fdbaec8..5020ba484c 100644
--- a/fftools/ffprobe.c
+++ b/fftools/ffprobe.c
@@ -545,12 +545,13 @@ static const AVClass writer_class = {
.child_next = writer_child_next,
};
-static void writer_close(WriterContext **wctx)
+static int writer_close(WriterContext **wctx)
{
int i;
+ int ret = 0;
if (!*wctx)
- return;
+ return -1;
if ((*wctx)->writer->uninit)
(*wctx)->writer->uninit(*wctx);
@@ -562,9 +563,10 @@ static void writer_close(WriterContext **wctx)
av_opt_free(*wctx);
if ((*wctx)->avio) {
avio_flush((*wctx)->avio);
- avio_close((*wctx)->avio);
+ ret = avio_close((*wctx)->avio);
}
av_freep(wctx);
+ return ret;
}
static void bprint_bytes(AVBPrint *bp, const uint8_t *ubuf, size_t ubuf_size)
@@ -4145,7 +4147,9 @@ int main(int argc, char **argv)
}
writer_print_section_footer(wctx);
- writer_close(&wctx);
+ ret = writer_close(&wctx);
+ if (ret < 0)
+ av_log(NULL, AV_LOG_ERROR, "Writing output failed: %s\n", av_err2str(ret));
}
end: