Make url_resetbuf() assert on wrong flags passed and make it static on next

version bump.
See thread: [FFmpeg-devel] & vs. &&
Date: Mon, 12 Oct 2009 14:21:06 +0200

Originally committed as revision 20330 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Benoit Fouet 2009-10-20 06:40:01 +00:00
parent 0cd0a22488
commit 08580cb05a
2 changed files with 13 additions and 0 deletions

View File

@ -333,11 +333,13 @@ int url_fdopen(ByteIOContext **s, URLContext *h);
/** @warning must be called before any I/O */
int url_setbufsize(ByteIOContext *s, int buf_size);
#if LIBAVFORMAT_VERSION_MAJOR < 53
/** Reset the buffer for reading or writing.
* @note Will drop any data currently in the buffer without transmitting it.
* @param flags URL_RDONLY to set up the buffer for reading, or URL_WRONLY
* to set up the buffer for writing. */
int url_resetbuf(ByteIOContext *s, int flags);
#endif
/** @note when opened as read/write, the buffers are only used for
writing */

View File

@ -28,6 +28,9 @@
#define IO_BUFFER_SIZE 32768
static void fill_buffer(ByteIOContext *s);
#if LIBAVFORMAT_VERSION_MAJOR >= 53
static int url_resetbuf(ByteIOContext *s, int flags);
#endif
int init_put_byte(ByteIOContext *s,
unsigned char *buffer,
@ -583,11 +586,19 @@ int url_setbufsize(ByteIOContext *s, int buf_size)
return 0;
}
#if LIBAVFORMAT_VERSION_MAJOR < 53
int url_resetbuf(ByteIOContext *s, int flags)
#else
static int url_resetbuf(ByteIOContext *s, int flags)
#endif
{
#if LIBAVFORMAT_VERSION_MAJOR < 53
URLContext *h = s->opaque;
if ((flags & URL_RDWR) || (h && h->flags != flags && !h->flags & URL_RDWR))
return AVERROR(EINVAL);
#else
assert(flags == URL_WRONLY || flags == URL_RDONLY);
#endif
if (flags & URL_WRONLY) {
s->buf_end = s->buffer + s->buffer_size;