1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-03 05:10:03 +02:00
FFmpeg/libavformat
Andreas Rheinhardt bc3cf2bbd3 avformat/mpeg: Don't copy or leak string in AVBPrint
vobsub_read_header() uses an AVBPrint to write a string and up until
now, it collected the string stored in the AVBPrint via
av_bprint_finalize(), which might involve an allocation and copy of the
string. But this is unnecessary, as the lifetime of the returned string
does not exceed the lifetime of the AVBPrint. So use the string in the
AVBPrint directly.

This also makes it possible to easily fix a memleak: In certain error
situations, the string stored in the AVBPrint would not be freed (if it
was dynamically allocated). This has been fixed, too.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-12-05 17:22:40 +01:00
..
tests
.gitignore
3dostr.c
4xm.c
a64.c
aacdec.c
aadec.c
ac3dec.c
acm.c
act.c
adp.c
ads.c
adtsenc.c
adxdec.c
aea.c
afc.c
aiff.h
aiffdec.c
aiffenc.c avformat/aiffenc: Add deinit function 2019-10-25 23:27:02 +02:00
aixdec.c
allformats.c avformat: add an AV1 Annex B demuxer 2019-11-12 22:21:51 -03:00
amr.c
anm.c
apc.c
ape.c
apetag.c avformat/apetag: Avoid allocation for small tags 2019-11-28 15:20:36 -03:00
apetag.h
apngdec.c
apngenc.c avformat/apngenc: Add deinit function 2019-10-30 15:28:48 -03:00
aptxdec.c
aqtitledec.c
asf.c
asf.h
asfcrypt.c
asfcrypt.h
asfdec_f.c
asfdec_o.c lavf/asfdec: Simplify the check conditions 2019-11-04 10:24:58 +08:00
asfenc.c avformat/asfenc: Remove unnecessary header 2019-10-25 23:27:02 +02:00
assdec.c
assenc.c
ast.c
ast.h
astdec.c
astenc.c
async.c
au.c
audiointerleave.c
audiointerleave.h
av1.c avformat/av1: Avoid allocation for small headers 2019-11-28 15:20:37 -03:00
av1.h
av1dec.c avformat/av1dec: simplify annexb_probe() 2019-11-16 15:56:36 -03:00
avc.c avformat/avc: add missing return error value 2019-11-30 11:34:58 -03:00
avc.h avformat/avc: write the missing bits in the AVC Decoder Configuration Box 2019-11-28 15:20:37 -03:00
avformat.h avformat: Add max_probe_packets option 2019-11-03 11:52:32 +01:00
avformatres.rc
avi.h
avidec.c avformat/avidec: Remove superfluous header 2019-10-25 23:27:02 +02:00
avienc.c avformat/avienc: Remove superfluous header 2019-10-25 23:27:02 +02:00
avio_internal.h
avio.c avformat/avio: Use ffurl_closep 2019-11-29 19:58:35 +01:00
avio.h
aviobuf.c avformat/aviobuf: Avoid allocating buffer when using dynamic buffer 2019-11-28 15:20:36 -03:00
avisynth.c
avlanguage.c
avlanguage.h
avr.c
avs.c
bethsoftvid.c
bfi.c
bink.c
bintext.c avformat/bintext: avoid division by zero 2019-10-25 12:22:25 +02:00
bit.c
bluray.c
bmv.c
boadec.c
brstm.c
c93.c
cache.c
caf.c
caf.h
cafdec.c
cafenc.c
cavsvideodec.c
cdg.c
cdxl.c
chromaprint.c
cinedec.c
codec2.c
concat.c
concatdec.c
crcenc.c
crypto.c
cutils.c
dash.c
dash.h
dashdec.c lavf/dashdec: drop unnecessary check before ff_format_io_close 2019-11-08 11:39:02 +08:00
dashenc.c avformat/dashenc: remove unused check of avformat_free_context 2019-12-02 00:08:07 +08:00
data_uri.c
dauddec.c
daudenc.c
davs2.c
dcstr.c
dfa.c
dhav.c
diracdec.c
dnxhddec.c
dsfdec.c
dsicin.c
dss.c avformat/dss: Remove superfluous headers 2019-10-29 16:20:33 +01:00
dtsdec.c
dtshddec.c
dump.c
dv.c
dv.h
dvbsub.c
dvbtxt.c
dvenc.c avformat/dvenc: support muxing dvcprohd 2019-11-23 11:02:04 -08:00
dxa.c
eacdata.c
electronicarts.c
epafdec.c
ffmeta.h
ffmetadec.c
ffmetaenc.c
fifo_test.c
fifo.c
file_open.c
file.c
filmstripdec.c
filmstripenc.c
fitsdec.c
fitsenc.c
flac_picture.c avformat/flac_picture: Return directly if nothing has been allocated 2019-12-01 17:17:04 +01:00
flac_picture.h
flacdec.c avformat/flacdec: Remove useless packet 2019-11-17 23:44:17 +01:00
flacenc_header.c avformat/flacenc: Add const to ff_flac_write_header() parameter 2019-11-28 18:44:01 +01:00
flacenc.c libavformat/flacenc: reject too big picture blocks 2019-11-01 14:43:16 +01:00
flacenc.h avformat/flacenc: Add const to ff_flac_write_header() parameter 2019-11-28 18:44:01 +01:00
flic.c
flv.h
flvdec.c
flvenc.c avformat/flvenc: Check pts for mpeg4/h264 (which need the value) 2019-11-09 15:59:38 +01:00
format.c
framecrcenc.c
framehash.c
frmdec.c
fsb.c
ftp.c avformat/ftp: add AVOptions for authentication 2019-11-03 12:24:19 +01:00
g722.c
g723_1.c
g726.c
g729dec.c
gdv.c
genh.c
gif.c
gifdec.c
golomb_tab.c
gopher.c
gsmdec.c
gxf.c
gxf.h
gxfenc.c
h261dec.c
h263dec.c
h264dec.c
hashenc.c
hcom.c
hdsenc.c avformat/hdsenc: removed unused check of avformat_free_context 2019-12-02 00:08:14 +08:00
hevc.c
hevc.h
hevcdec.c
hls.c avformat/hls: correct grammatical errors of m3u8_hold_counters option 2019-11-27 19:04:00 +08:00
hlsenc.c avformat/hlsenc: set strict_std_compliance from the parent AVFormatContext 2019-11-26 11:32:03 +08:00
hlsplaylist.c
hlsplaylist.h
hlsproto.c
hnm.c
http.c
http.h
httpauth.c
httpauth.h
icecast.c
icodec.c
icoenc.c
id3v1.c
id3v1.h
id3v2.c avformat/id3v2: Avoid av_strdup for key and value of dict 2019-11-13 23:35:21 +01:00
id3v2.h
id3v2enc.c avformat/id3v2enc: Avoid allocation for small tags 2019-11-28 15:20:37 -03:00
idcin.c
idroqdec.c
idroqenc.c
iff.c
ifv.c
ilbc.c
img2_alias_pix.c
img2_brender_pix.c
img2.c
img2.h
img2dec.c
img2enc.c
ingenientdec.c
internal.h avformat: Add max_probe_packets option 2019-11-03 11:52:32 +01:00
ip.c
ip.h
ipmovie.c
ircam.c
ircam.h
ircamdec.c
ircamenc.c
isom.c
isom.h
iss.c
iv8.c
ivfdec.c
ivfenc.c
jacosubdec.c
jacosubenc.c
jvdec.c
latmenc.c
libavformat.v
libgme.c
libmodplug.c avformat/libmodplug: fix memleak when load modplug failed 2019-10-28 14:26:07 +08:00
libopenmpt.c
librtmp.c
libsmbclient.c
libsrt.c
libssh.c
libzmq.c
lmlm4.c
loasdec.c
log2_tab.c
lrc.c
lrc.h
lrcdec.c
lrcenc.c
lvfdec.c
lxfdec.c
m4vdec.c
Makefile lavf/Makefile: Specify sln demuxer requirements. 2019-11-17 23:40:14 +01:00
matroska.c
matroska.h
matroskadec.c avformat/matroskadec: Reuse AVIOContext 2019-12-04 23:11:37 -03:00
matroskaenc.c avformat/matroskaenc: Avoid allocation for small dynamic buffers 2019-11-28 15:20:37 -03:00
md5proto.c
metadata.c
metadata.h
mgsts.c
microdvddec.c
microdvdenc.c
mj2kdec.c
mkvtimestamp_v2.c
mlpdec.c
mlvdec.c avformat/mlvdec:drop unnecessary check before ff_format_io_close 2019-11-09 11:27:14 +09:00
mm.c
mmf.c
mms.c
mms.h
mmsh.c
mmst.c
mov_chan.c
mov_chan.h
mov_esds.c
mov.c avformat/mov: fix typo in help text 2019-11-16 20:57:45 +01:00
movenc.c avformat/movenc: Avoid allocation for small dynamic buffers 2019-11-28 15:20:37 -03:00
movenc.h
movenccenc.c
movenccenc.h
movenchint.c
mp3dec.c avformat/mp3dec: Check for occurances of headers within frames during probing 2019-11-16 23:40:39 +01:00
mp3enc.c
mpc8.c avformat/mpc8: fix memleak when seek table too big 2019-10-28 14:26:10 +08:00
mpc.c
mpeg.c avformat/mpeg: Don't copy or leak string in AVBPrint 2019-12-05 17:22:40 +01:00
mpeg.h
mpegenc.c
mpegts.c
mpegts.h avformat/mpegtsenc: allow any sensible PID for elementary and PMT PIDs 2019-12-03 11:00:10 +01:00
mpegtsenc.c avformat/mpegtsenc: add padding to m2ts streams 2019-12-03 11:00:11 +01:00
mpegvideodec.c
mpjpeg.c
mpjpegdec.c
mpl2dec.c
mpsubdec.c
msf.c
msnwc_tcp.c
mtaf.c
mtv.c
musx.c
mux.c
mvdec.c
mvi.c
mxf.c
mxf.h
mxfdec.c avformat/mxfdec: Clear metadata_sets_count in mxf_read_close() 2019-12-01 17:17:04 +01:00
mxfenc.c avformat/mxfenc: simplify d-10 ul handling 2019-11-23 11:02:04 -08:00
mxg.c
ncdec.c
network.c
network.h
nistspheredec.c
nspdec.c
nsvdec.c
nullenc.c
nut.c
nut.h
nutdec.c
nutenc.c avformat/nutenc: Do not pass NULL to memcmp() in get_needed_flags() 2019-11-05 21:21:59 +01:00
nuv.c
oggdec.c
oggdec.h
oggenc.c
oggparsecelt.c
oggparsedaala.c
oggparsedirac.c
oggparseflac.c
oggparseogm.c
oggparseopus.c
oggparseskeleton.c
oggparsespeex.c
oggparsetheora.c
oggparsevorbis.c
oggparsevp8.c
oma.c
oma.h
omadec.c
omaenc.c
options_table.h avformat: Add max_probe_packets option 2019-11-03 11:52:32 +01:00
options.c
os_support.c
os_support.h
paf.c
pcm.c
pcm.h
pcmdec.c
pcmenc.c
pjsdec.c
pmpdec.c
prompeg.c
protocols.c
psxstr.c
pva.c
pvfdec.c
qcp.c
qtpalette.c
qtpalette.h
r3d.c
rawdec.c
rawdec.h
rawenc.c
rawenc.h
rawutils.c
rawvideodec.c
rdt.c
rdt.h
realtextdec.c
redspark.c
replaygain.c
replaygain.h
riff.c avcodec: add mvha video decoder 2019-11-27 23:54:20 +01:00
riff.h
riffdec.c
riffenc.c
rl2.c avformat/rl2: fix memleak when read end of file 2019-10-28 14:26:11 +08:00
rm.c
rm.h
rmdec.c avformat/rmdec: Use av_packet_move_ref() for packet ownership transfer 2019-12-04 20:17:00 +01:00
rmenc.c
rmsipr.c
rmsipr.h
rpl.c
rsd.c
rso.c
rso.h
rsodec.c
rsoenc.c
rtmp.h
rtmpcrypt.c
rtmpcrypt.h
rtmpdh.c
rtmpdh.h
rtmpdigest.c
rtmphttp.c
rtmppkt.c
rtmppkt.h
rtmpproto.c lavf/rtmpproto: fix the playpath truncation if the len > 512 2019-11-17 09:09:38 +08:00
rtp.c
rtp.h
rtpdec_ac3.c
rtpdec_amr.c
rtpdec_asf.c
rtpdec_dv.c
rtpdec_formats.h
rtpdec_g726.c
rtpdec_h261.c
rtpdec_h263_rfc2190.c
rtpdec_h263.c
rtpdec_h264.c
rtpdec_hevc.c
rtpdec_ilbc.c
rtpdec_jpeg.c
rtpdec_latm.c
rtpdec_mpa_robust.c
rtpdec_mpeg4.c
rtpdec_mpeg12.c
rtpdec_mpegts.c
rtpdec_qcelp.c
rtpdec_qdm2.c
rtpdec_qt.c
rtpdec_rfc4175.c
rtpdec_svq3.c
rtpdec_vc2hq.c
rtpdec_vp8.c
rtpdec_vp9.c
rtpdec_xiph.c
rtpdec.c
rtpdec.h
rtpenc_aac.c
rtpenc_amr.c
rtpenc_chain.c
rtpenc_chain.h
rtpenc_h261.c
rtpenc_h263_rfc2190.c
rtpenc_h263.c
rtpenc_h264_hevc.c
rtpenc_jpeg.c
rtpenc_latm.c
rtpenc_mpegts.c avformat/rtpenc_mpegts: removed unused check of avformat_free_context 2019-12-02 00:08:21 +08:00
rtpenc_mpv.c
rtpenc_vc2hq.c
rtpenc_vp8.c
rtpenc_vp9.c
rtpenc_xiph.c
rtpenc.c
rtpenc.h
rtpproto.c
rtpproto.h
rtsp.c
rtsp.h
rtspcodes.h
rtspdec.c
rtspenc.c
s337m.c
samidec.c
sapdec.c
sapenc.c
sauce.c
sauce.h
sbcdec.c
sbgdec.c
sccdec.c
sccenc.c
sctp.c
sdp.c
sdr2.c
sdsdec.c
sdxdec.c
segafilm.c
segafilmenc.c
segment.c
serdec.c
shortendec.c
sierravmd.c
siff.c
smacker.c avformat/smacker: fix memleak when avformat_new_stream failed 2019-10-28 14:26:16 +08:00
smjpeg.c
smjpeg.h
smjpegdec.c
smjpegenc.c
smoothstreamingenc.c avformat/smoothstreamingenc: removed unused check of avformat_free_context 2019-12-02 00:08:31 +08:00
smush.c
sol.c
sox.h
soxdec.c
soxenc.c
spdif.c
spdif.h
spdifdec.c
spdifenc.c
srtdec.c
srtenc.c
srtp.c
srtp.h
srtpproto.c
stldec.c
subfile.c
subtitles.c
subtitles.h
subviewer1dec.c
subviewerdec.c
supdec.c
supenc.c
svag.c
swf.c
swf.h
swfdec.c avformat/swfdec: fix memleak when inflateInit failed 2019-10-28 14:26:20 +08:00
swfenc.c
takdec.c
tcp.c
tedcaptionsdec.c
tee_common.c
tee_common.h
tee.c avformat/tee.c: steal bsf option before passing to fifo muxer 2019-10-25 11:55:52 +08:00
teeproto.c
thp.c
tiertexseq.c
tls_gnutls.c
tls_libtls.c
tls_mbedtls.c
tls_openssl.c
tls_schannel.c
tls_securetransport.c
tls.c
tls.h
tmv.c
tta.c
ttaenc.c
tty.c
txd.c
ty.c
udp.c
uncodedframecrcenc.c
unix.c
url.c
url.h
urldecode.c
urldecode.h
utils.c libavformat/utils: Fix code indentation 2019-12-03 09:50:00 +01:00
v210.c
vag.c
vapoursynth.c
vc1dec.c
vc1test.c
vc1testenc.c
version.h avformat/mpegtsenc: allow any sensible PID for elementary and PMT PIDs 2019-12-03 11:00:10 +01:00
vividas.c lavf/vividas: check avformat_new_stream() return 2019-11-29 10:09:29 +08:00
vivo.c
voc_packet.c
voc.c
voc.h
vocdec.c
vocenc.c
vorbiscomment.c
vorbiscomment.h
vpcc.c
vpcc.h
vpk.c
vplayerdec.c
vqf.c
w64.c
w64.h
wavdec.c
wavenc.c
wc3movie.c avformat/wc3movie: fix memleak when read content size not equvipe input size 2019-10-28 14:26:22 +08:00
webm_chunk.c
webmdashenc.c
webpenc.c
webvttdec.c
webvttenc.c
westwood_aud.c
westwood_vqa.c
wsddec.c
wtv_common.c
wtv.h
wtvdec.c
wtvenc.c
wv.c
wv.h
wvdec.c
wvedec.c
wvenc.c
xa.c
xmv.c
xvag.c
xwma.c
yop.c
yuv4mpeg.h
yuv4mpegdec.c
yuv4mpegenc.c