properly check for FF_API_MAX_STREAMS instead of LIBAVFORMAT_VERSION_MAJOR

Originally committed as revision 25382 to svn://svn.ffmpeg.org/ffmpeg/trunk
oldabi
Aurelien Jacobs 15 years ago
parent 38aab35f47
commit 61138c43e0
  1. 2
      libavformat/avformat.h
  2. 13
      libavformat/utils.c

@ -672,7 +672,7 @@ typedef struct AVFormatContext {
void *priv_data;
ByteIOContext *pb;
unsigned int nb_streams;
#if LIBAVFORMAT_VERSION_MAJOR < 53
#if FF_API_MAX_STREAMS
AVStream *streams[MAX_STREAMS];
#else
AVStream **streams;

@ -2543,7 +2543,13 @@ AVStream *av_new_stream(AVFormatContext *s, int id)
{
AVStream *st;
int i;
#if LIBAVFORMAT_VERSION_MAJOR >= 53
#if FF_API_MAX_STREAMS
if (s->nb_streams >= MAX_STREAMS){
av_log(s, AV_LOG_ERROR, "Too many streams\n");
return NULL;
}
#else
AVStream **streams;
if (s->nb_streams >= INT_MAX/sizeof(*streams))
@ -2552,11 +2558,6 @@ AVStream *av_new_stream(AVFormatContext *s, int id)
if (!streams)
return NULL;
s->streams = streams;
#else
if (s->nb_streams >= MAX_STREAMS){
av_log(s, AV_LOG_ERROR, "Too many streams\n");
return NULL;
}
#endif
st = av_mallocz(sizeof(AVStream));

Loading…
Cancel
Save