Showing the changes to libavfilter/framesync.c (1 of 5 files). Show all
Unified · Split
| @@ -46,11 +46,16 @@ enum { · 45 unmodified lines | ||
| 46 | 46 | STATE_EOF, |
| 47 | 47 | }; |
| 48 | 48 | |
| 49 | −void ff_framesync_init(FFFrameSync *fs, void *parent, unsigned nb_in) | |
| 49 | +int ff_framesync_init(FFFrameSync *fs, void *parent, unsigned nb_in) | |
| 50 | 50 | { |
| 51 | 51 | fs->class = &framesync_class; |
| 52 | 52 | fs->parent = parent; |
| 53 | 53 | fs->nb_in = nb_in; |
| 54 | + | |
| 55 | + fs->in = av_calloc(nb_in, sizeof(*fs->in)); | |
| 56 | + if (!fs->in) | |
| 57 | + return AVERROR(ENOMEM); | |
| 58 | + return 0; | |
| 54 | 59 | } |
| 55 | 60 | |
| 56 | 61 | static void framesync_sync_level_update(FFFrameSync *fs) |
| @@ -267,6 +272,8 @@ void ff_framesync_uninit(FFFrameSync *fs) · 210 unmodified lines | ||
| 267 | 272 | av_frame_free(&fs->in[i].frame_next); |
| 268 | 273 | ff_bufqueue_discard_all(&fs->in[i].queue); |
| 269 | 274 | } |
| 275 | + | |
| 276 | + av_freep(&fs->in); | |
| 270 | 277 | } |
| 271 | 278 | |
| 272 | 279 | int ff_framesync_process_frame(FFFrameSync *fs, unsigned all) |