From 6e8b982bcc1ff1b647b28d70a5900ed1bb41e52a Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 4 Jan 2008 17:52:16 +0000 Subject: Move *malloc() out of tree.c, that way the code can be used with flat arrays which have lower overhead than millions of mallocd() elements. Originally committed as revision 11399 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/nut.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'libavformat/nut.c') diff --git a/libavformat/nut.c b/libavformat/nut.c index 7eb53136d5..546bde1cd0 100644 --- a/libavformat/nut.c +++ b/libavformat/nut.c @@ -48,12 +48,15 @@ int ff_nut_sp_pts_cmp(syncpoint_t *a, syncpoint_t *b){ } void ff_nut_add_sp(NUTContext *nut, int64_t pos, int64_t back_ptr, int64_t ts){ - syncpoint_t *sp2, *sp= av_mallocz(sizeof(syncpoint_t)); + syncpoint_t *sp= av_mallocz(sizeof(syncpoint_t)); + struct AVTreeNode *node= av_mallocz(av_tree_node_size); sp->pos= pos; sp->back_ptr= back_ptr; sp->ts= ts; - sp2= av_tree_insert(&nut->syncpoints, sp, ff_nut_sp_pos_cmp); - if(sp2 && sp2 != sp) + av_tree_insert(&nut->syncpoints, sp, ff_nut_sp_pos_cmp, &node); + if(node){ av_free(sp); + av_free(node); + } } -- cgit v1.2.3