mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-22 19:00:07 +00:00
* sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
This commit is contained in:
parent
48be31142a
commit
5e65a53d54
@ -1,5 +1,7 @@
|
||||
2006-05-04 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
|
||||
|
||||
* sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
|
||||
client->cl_auth.
|
||||
|
||||
|
@ -74,7 +74,6 @@ xdr_array (xdrs, addrp, sizep, maxsize, elsize, elproc)
|
||||
caddr_t target = *addrp;
|
||||
u_int c; /* the actual element count */
|
||||
bool_t stat = TRUE;
|
||||
u_int nodesize;
|
||||
|
||||
/* like strings, arrays are really counted arrays */
|
||||
if (!INTUSE(xdr_u_int) (xdrs, sizep))
|
||||
@ -90,7 +89,6 @@ xdr_array (xdrs, addrp, sizep, maxsize, elsize, elproc)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
nodesize = c * elsize;
|
||||
|
||||
/*
|
||||
* if we are deserializing, we may need to allocate an array.
|
||||
@ -102,13 +100,12 @@ xdr_array (xdrs, addrp, sizep, maxsize, elsize, elproc)
|
||||
case XDR_DECODE:
|
||||
if (c == 0)
|
||||
return TRUE;
|
||||
*addrp = target = mem_alloc (nodesize);
|
||||
*addrp = target = calloc (c, elsize);
|
||||
if (target == NULL)
|
||||
{
|
||||
(void) __fxprintf (NULL, "%s", _("xdr_array: out of memory\n"));
|
||||
return FALSE;
|
||||
}
|
||||
__bzero (target, nodesize);
|
||||
break;
|
||||
|
||||
case XDR_FREE:
|
||||
@ -131,7 +128,7 @@ xdr_array (xdrs, addrp, sizep, maxsize, elsize, elproc)
|
||||
*/
|
||||
if (xdrs->x_op == XDR_FREE)
|
||||
{
|
||||
mem_free (*addrp, nodesize);
|
||||
mem_free (*addrp, c * elsize);
|
||||
*addrp = NULL;
|
||||
}
|
||||
return stat;
|
||||
|
Loading…
Reference in New Issue
Block a user