page allocation is wrong
[henge/webcc.git] / src / apc / ir.c
index fe613ba..8030755 100644 (file)
@@ -50,10 +50,6 @@ extern
 struct vdat*
 curr_vdat(void);
 
-extern
-struct ele*
-curr_ele(void);
-
 extern
 struct set*
 curr_set(void);
@@ -272,16 +268,13 @@ insert_ele_label
   uint64_t ref_id
 )
 {
-  struct ele* curr_elep;
   struct odat* curr_odatp;
 
-  curr_elep = curr_ele();
   curr_odatp = alloc_odat();
 
   memmove(curr_odatp->name, name, 32);
+  curr_odatp->ref_id = ref_id;
 
-  memmove(curr_elep->name, name, 32);
-  curr_elep->ref_id = ref_id;
 }
 
 /* We don't make an odat here, at output time we will resolve
@@ -297,17 +290,17 @@ insert_ele_olink
   struct link* curr_linkp;
 
   curr_cdatp = curr_cdat();
-  curr_elep = curr_ele();
+  //curr_elep = curr_ele();
   curr_linkp = alloc_link();
 
-  curr_elep->cdat_idx = curr_cdatp->idx;
-  curr_elep->ref_id = ref_id;
+  //curr_elep->cdat_idx = curr_cdatp->idx;
+  //curr_elep->ref_id = ref_id;
 
   curr_linkp->type = 1;
   curr_linkp->link_t.olink.ref_id = ref_id;
   curr_linkp->cdat_idx = curr_cdatp->idx;
   curr_linkp->set_idx = curr_cdatp->num_sets++;
-  curr_linkp->ele_idx = curr_setp->num_ele++;
+  //curr_linkp->ele_idx = curr_setp->num_ele++;
 
 }
 
@@ -330,7 +323,7 @@ insert_ele_vlink
   curr_linkp->cdat_idx = curr_cdatp->idx;
   curr_linkp->type = 2;
   curr_linkp->set_idx = curr_cdatp->num_sets;
-  curr_linkp->ele_idx = curr_setp->num_ele;
+  //curr_linkp->ele_idx = curr_setp->num_ele;
   curr_linkp->link_t.vlink.ref_id = ref_id;
   memmove(curr_linkp->link_t.vlink.anim_name, anim_name, 32);
 
@@ -352,7 +345,7 @@ insert_ele_svlink
   curr_linkp->cdat_idx = curr_cdatp->idx;
   curr_linkp->type = 3;
 
-  curr_linkp->ele_idx = curr_setp->num_ele;
+  //curr_linkp->ele_idx = curr_setp->num_ele;
   curr_linkp->link_t.svlink.ref_id = ref_id;
 
 
@@ -372,25 +365,20 @@ insert_ele()
   struct ref* prev_refp;
 
 
-  curr_cdatp = curr_cdat();
   curr_odatp = curr_odat(); //malloced @ insert_ele_label
   curr_vdatp = curr_vdat();
   curr_setp = curr_set();
-  curr_elep = curr_ele();
   curr_refp = alloc_ref();
   prev_refp = prev_ref();
 
   curr_vdatp->creator = curr_odatp;
-  /* Populate ele in cdat */
-  curr_elep->cdat_idx = curr_cdatp->idx;
-  curr_setp->num_ele++;
 
   /* Populate odat for ele */
   curr_odatp->cdat_idx = curr_cdatp->idx;
   curr_odatp->refp = curr_refp;
 
-  /* Add ele to ref_buf */
-  ref_id = curr_elep->ref_id;
+  ref_id = curr_odatp->ref_id;
+
 
   if(ref_id == -1) /* user did not define a ref_id so */
     { ref_id = ss_ref_id;