Diff for /libelwix/src/iov.c between versions 1.1.2.3 and 1.2

version 1.1.2.3, 2021/03/19 01:30:23 version 1.2, 2021/03/21 01:32:04
Line 202  iov_Pop(iovec_t * __restrict iov, void *data, size_t * Line 202  iov_Pop(iovec_t * __restrict iov, void *data, size_t *
         if (!iov)          if (!iov)
                 return -1;                  return -1;
   
           if (iov->iov_size < 1)
                   return 0;
   
         for (pos = iov->iov_size - 1; pos >= 0; pos--)          for (pos = iov->iov_size - 1; pos >= 0; pos--)
                 if (iov->iov_array[pos].iov_base)                  if (iov->iov_array[pos].iov_base)
                         break;                          break;
Line 277  iov_PopPair(iovec_t * __restrict iov, char *name, size Line 280  iov_PopPair(iovec_t * __restrict iov, char *name, size
                 return -1;                  return -1;
   
         return pos;          return pos;
   }
   
   /*
    * iov_FreePairs() - Free pairs/named data in iovec array
    *
    * @iov = iovec array
    * @mustfree = data must be free before delete
    * return: -1 error or 0 ok
    */
   int
   iov_FreePairs(iovec_t * __restrict iov, int mustfree)
   {
           register int pos;
   
           if (!iov)
                   return -1;
   
           if (iov->iov_size < 1)
                   return 0;
   
           for (pos = 0; pos < (iov_Size(iov) & ~1); pos += 2) {
                   if (iov->iov_array[pos].iov_base)
                           iov_Delete(iov, pos, 42);
                   if (iov->iov_array[pos + 1].iov_base)
                           iov_Delete(iov, pos + 1, mustfree);
           }
   
           return 0;
 }  }
   
 /*  /*

Removed from v.1.1.2.3  
changed lines
  Added in v.1.2


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