Unified · Split
| @@ -176,6 +176,8 @@ static int film_read_header(AVFormatContext *s, · 175 unmodified lines | ||
| 176 | 176 | if(film->sample_count >= UINT_MAX / sizeof(film_sample)) |
| 177 | 177 | return -1; |
| 178 | 178 | film->sample_table = av_malloc(film->sample_count * sizeof(film_sample)); |
| 179 | + if (!film->sample_table) | |
| 180 | + return AVERROR(ENOMEM); | |
| 179 | 181 | |
| 180 | 182 | for(i=0; i<s->nb_streams; i++) |
| 181 | 183 | av_set_pts_info(s->streams[i], 33, 1, film->base_clock); |
| @@ -252,6 +254,10 @@ static int film_read_packet(AVFormatContext *s, · 70 unmodified lines | ||
| 252 | 254 | av_free(film->stereo_buffer); |
| 253 | 255 | film->stereo_buffer_size = sample->sample_size; |
| 254 | 256 | film->stereo_buffer = av_malloc(film->stereo_buffer_size); |
| 257 | + if (!film->stereo_buffer) { | |
| 258 | + film->stereo_buffer_size = 0; | |
| 259 | + return AVERROR(ENOMEM); | |
| 260 | + } | |
| 255 | 261 | } |
| 256 | 262 | |
| 257 | 263 | pkt->pos= avio_tell(pb); |