Diff for /libelwix/src/vars.c between versions 1.1.1.1 and 1.1.1.1.2.2

version 1.1.1.1, 2013/01/17 10:05:35 version 1.1.1.1.2.2, 2013/03/07 15:34:26
Line 587  ait_sortVarsByVal(array_t * __restrict vars, int order Line 587  ait_sortVarsByVal(array_t * __restrict vars, int order
                 return;                  return;
   
         if (cmp)          if (cmp)
                qsort(vars->arr_data, vars->arr_num, sizeof(void*), cmp);                qsort(vars->arr_data, vars->arr_num, sizeof(uintptr_t), cmp);
         else if (order)          else if (order)
                qsort(vars->arr_data, vars->arr_num, sizeof(void*), _cmp_arr_val_desc);                qsort(vars->arr_data, vars->arr_num, sizeof(uintptr_t), _cmp_arr_val_desc);
         else          else
                qsort(vars->arr_data, vars->arr_num, sizeof(void*), _cmp_arr_val_asc);                qsort(vars->arr_data, vars->arr_num, sizeof(uintptr_t), _cmp_arr_val_asc);
 }  }
   
 /*  /*
Line 608  ait_sortVarsByKey(array_t * __restrict vars, int order Line 608  ait_sortVarsByKey(array_t * __restrict vars, int order
                 return;                  return;
   
         if (order)          if (order)
                qsort(vars->arr_data, vars->arr_num, sizeof(void*), _cmp_arr_key_desc);                qsort(vars->arr_data, vars->arr_num, sizeof(uintptr_t), _cmp_arr_key_desc);
         else          else
                qsort(vars->arr_data, vars->arr_num, sizeof(void*), _cmp_arr_key_asc);                qsort(vars->arr_data, vars->arr_num, sizeof(uintptr_t), _cmp_arr_key_asc);
 }  }
   
 /*  /*
Line 634  ait_findKeyVars(array_t * __restrict vars, u_short key Line 634  ait_findKeyVars(array_t * __restrict vars, u_short key
         if (array_Copy(&tmp, vars) == -1)          if (array_Copy(&tmp, vars) == -1)
                 return NULL;                  return NULL;
         else          else
                qsort(tmp->arr_data, tmp->arr_num, sizeof(void*), _cmp_arr_key_asc);                qsort(tmp->arr_data, tmp->arr_num, sizeof(uintptr_t), _cmp_arr_key_asc);
   
         /* binary search */          /* binary search */
         for (p = (const u_char*) tmp->arr_data, i = array_Size(tmp); i; i >>= 1) {          for (p = (const u_char*) tmp->arr_data, i = array_Size(tmp); i; i >>= 1) {
                vv = (ait_val_t**) (p + (i >> 1) * sizeof(void*));                vv = (ait_val_t**) (p + (i >> 1) * sizeof(uintptr_t));
                 if (!(key - AIT_KEY(*vv))) {    /* found! */                  if (!(key - AIT_KEY(*vv))) {    /* found! */
                         v = *vv;                          v = *vv;
                         break;                          break;
                 }                  }
                 if ((key - AIT_KEY(*vv)) > 0) { /* move right key > current */                  if ((key - AIT_KEY(*vv)) > 0) { /* move right key > current */
                        p = (const u_char*) vv + sizeof(void*);                        p = (const u_char*) vv + sizeof(uintptr_t);
                         i--;                          i--;
                 }                               /* else move left */                  }                               /* else move left */
         }          }
Line 754  ait_findKeyHash(array_t * __restrict vars, const char  Line 754  ait_findKeyHash(array_t * __restrict vars, const char 
  * return: -1 error or >0 copied bytes to variable   * return: -1 error or >0 copied bytes to variable
  */   */
 int  int
io_sprintfVar(ait_val_t * __restrict v, const char *fmt, ...)ait_sprintfVar(ait_val_t * __restrict v, const char *fmt, ...)
 {  {
         int ret = 0;          int ret = 0;
         va_list lst;          va_list lst;

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.1.2.2


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