summaryrefslogtreecommitdiffstats
path: root/libavformat/utils.c
diff options
context:
space:
mode:
authorMichael Niedermayer <[email protected]>2011-07-27 11:20:13 +0200
committerMichael Niedermayer <[email protected]>2011-07-27 11:20:13 +0200
commit01a0612c7081954e2bdeb24230daffff8625777b (patch)
tree47663f8a04ea6758b8d3e8f377eb0a8d147cc6d9 /libavformat/utils.c
parentdcf1830a15a1e9ad1e16086369d55d8cb3a14e83 (diff)
parenta8d89df367859e5addd8bdbbebb4d787493397da (diff)
Merge branch 'release/0.8' into release/0.7
* release/0.8: (82 commits) Fix version numbers rtp: disable udp fifos, the rtp code cannot work with the fifos in its current form as rtp bypasses the public API. udp: allow fifo size to be tuned seperately riff: Add mpgv MPEG-2 fourcc Update Changelog matroskadec: fix integer underflow if header length < probe length. ffmpeg: fix operation with --disable-avfilter vf_libopencv: replace opencv/cxtypes.h #include by opencv/cxcore.h build: Create mlib optimization directories during out-of-tree builds. changelog: misc typo and wording fixes (cherry picked from commit b047941d7da470ba0dcedb1fd0aa828075265ffc) doc: Remove outdated comments about gcc 2.95 and gcc 3.3 support. (cherry picked from commit 5ccbf80963c1cc54aed97b1c81b1657ab91baf6a) matroskadec: matroska_read_seek after after EBML_STOP leads to failure. Update RELEASE file update Changelog mt: proper locking around release_buffer calls. vp8/mt: flush worker thread, not application thread context, on seek. docs: Mention the upstream bugzilla url about the dlltool vs MSVC issue docs: Use proper markup for a literal command line option docs: Don't recommend adding --enable-memalign-hack docs: Remove needless configure options ... Conflicts: VERSION libavcodec/opt.h libavformat/utils.c Merged-by: Michael Niedermayer <[email protected]>
Diffstat (limited to 'libavformat/utils.c')
-rw-r--r--libavformat/utils.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c
index b8a284a52b..3242887f41 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -531,9 +531,16 @@ int av_open_input_stream(AVFormatContext **ic_ptr,
err = AVERROR(ENOMEM);
goto fail;
}
- ic->pb = pb;
+ if (pb && fmt && fmt->flags & AVFMT_NOFILE)
+ av_log(ic, AV_LOG_WARNING, "Custom AVIOContext makes no sense and "
+ "will be ignored with AVFMT_NOFILE format.\n");
+ else
+ ic->pb = pb;
- err = avformat_open_input(ic_ptr, filename, fmt, &opts);
+ err = avformat_open_input(&ic, filename, fmt, &opts);
+
+ *ic_ptr = ic;
+ ic->pb = ic->pb ? ic->pb : pb; // don't leak custom pb if it wasn't set above
#if FF_API_OLD_METADATA
ff_metadata_demux_compat(ic);