Diff for /libelwix/src/vars.c between versions 1.5 and 1.6

version 1.5, 2013/08/22 15:21:25 version 1.6, 2013/11/14 21:31:28
Line 409  ait_clrVars(array_t * __restrict vars) Line 409  ait_clrVars(array_t * __restrict vars)
 void  void
 ait_freeVars(array_t ** __restrict vars)  ait_freeVars(array_t ** __restrict vars)
 {  {
           register int i;
           ait_val_t *v;
   
         if (!vars || !*vars)          if (!vars || !*vars)
                 return;                  return;
   
        ait_clrVars(*vars);        for (i = 0; i < array_Size(*vars); i++)
        array_Free(*vars);                if ((v = array(*vars, i, ait_val_t*))) {
                         /* free memory if isn't zero copy */
                         if (!AIT_IN(v)) {
                                 AIT_FREE_VAL(v);
                                 if ((*vars)->arr_data[i])
                                         e_free((*vars)->arr_data[i]);
                         } else
                                 AIT_FREE_VAL(v);
                         (*vars)->arr_data[i] = NULL;
                 }
         (*vars)->arr_last = -1;
 
         array_Destroy(vars);          array_Destroy(vars);
 }  }
   

Removed from v.1.5  
changed lines
  Added in v.1.6


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>