changeset 2890:31199df992f8 libavformat

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.
author michael
date Fri, 04 Jan 2008 17:52:16 +0000
parents 60275d3b2e42
children a6c922b05571
files nut.c
diffstat 1 files changed, 6 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/nut.c	Fri Jan 04 13:00:47 2008 +0000
+++ b/nut.c	Fri Jan 04 17:52:16 2008 +0000
@@ -48,12 +48,15 @@
 }
 
 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);
+    }
 }