avformat/mux: Remove redundant checks for write errors

If writing a packet didn't directly return an error, the AVIOContext's
error flag is checked for errors (if existing) by write_packet(). And if
write_packet() didn't indicate an error, its callers checked the error
flag of the AVIOContext (if existing). The latter check is redundant.

The reason for checking twice lies in the FFmpeg-Libav split: The check
in write_packet() has been added in 9ad1e0c1 in Libav. FFmpeg already
had the other checks (since aec9390a), but when 9ad1e0c1 was merged
(in 1f1c1008), no one noticed the redundant checks.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
pull/336/head
Andreas Rheinhardt 5 years ago committed by Michael Niedermayer
parent cc2a9509ce
commit 5c5ab88967
  1. 6
      libavformat/mux.c

@ -913,8 +913,6 @@ int av_write_frame(AVFormatContext *s, AVPacket *pkt)
#endif #endif
ret = write_packet(s, pkt); ret = write_packet(s, pkt);
if (ret >= 0 && s->pb && s->pb->error < 0)
ret = s->pb->error;
if (ret >= 0) if (ret >= 0)
s->streams[pkt->stream_index]->nb_frames++; s->streams[pkt->stream_index]->nb_frames++;
@ -1246,8 +1244,6 @@ int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt)
if (ret < 0) if (ret < 0)
return ret; return ret;
if(s->pb && s->pb->error)
return s->pb->error;
} }
fail: fail:
av_packet_unref(pkt); av_packet_unref(pkt);
@ -1274,8 +1270,6 @@ int av_write_trailer(AVFormatContext *s)
if (ret < 0) if (ret < 0)
goto fail; goto fail;
if(s->pb && s->pb->error)
goto fail;
} }
fail: fail:

Loading…
Cancel
Save