Diff for /libaitcfg/src/queue.c between versions 1.14.4.1 and 1.14.4.2

version 1.14.4.1, 2014/03/19 16:35:29 version 1.14.4.2, 2014/03/19 17:00:51
Line 80  _selectAttribute(cfg_root_t * __restrict cfg, const ch Line 80  _selectAttribute(cfg_root_t * __restrict cfg, const ch
 /* --------------------------------------------------------------- */  /* --------------------------------------------------------------- */
   
 /*  /*
    * cfg_getSection() - Get entire section attributes into array
    *
    * @cfg = Config root
    * @csSec = Config section //[{csSec}]
    * return: NULL not found or !=NULL allocated array, must free with array_Destroy() after use!
    */
   array_t *
   cfg_getSection(cfg_root_t * __restrict cfg, const char *csSec)
   {
           array_t *arr = NULL;
           struct tagCfg *av, fav;
   
           if (!cfg) {
                   cfg_SetErr(EINVAL, "Invalid argument(s)");
                   return NULL;
           } else
                   memset(&fav, 0, sizeof fav);
   
           if (csSec && *csSec)
                   AIT_KEY(&fav.cfg_sec) = crcFletcher16((u_short*) csSec, 
                                   E_ALIGN(strlen(csSec), 2) / 2);
   
           av = RB_NFIND(tagRC, cfg, &fav);
           if (!av)
                   return NULL;
           if (strcmp(AIT_GET_STR(&av->cfg_sec), csSec))
                   return NULL;
   
           arr = array_Init(1);
           if (!arr) {
                   cfg_SetErr(elwix_GetErrno(), "%s", elwix_GetError());
                   return NULL;
           } else
                   array_Push(arr, av, 0);
   
           while (RB_NEXT(tagRC, cfg, av) && !strcmp(AIT_GET_STR(&av->cfg_sec), csSec))
                   array_Push(arr, av, 0);
   
           return arr;
   }
   
   /*
  * cfg_findAttribute() - Find attribute position in config file   * cfg_findAttribute() - Find attribute position in config file
  *   *
  * @cfg = Config root   * @cfg = Config root

Removed from v.1.14.4.1  
changed lines
  Added in v.1.14.4.2


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