Re: [PATCH 1/3] add alloc_ref_with_prefix()
- From
Andreas Ericsson <ae@op5.se>
- Date
- Oct 20, 2008, 10:34 UTC
- Message-ID
- <48FC5EAE.9000108@op5.se>
- In-Reply-To
- <36ca99e90810180507q2dedf4ck7262239ae91d892f@mail.gmail.com>
Bert Wesarg wrote:
Show 12 quoted lines
> On Sat, Oct 18, 2008 at 11:39, René Scharfe <rene.scharfe@lsrfire.ath.cx> wrote:
>>>> +static struct ref *alloc_ref_with_prefix(const char *prefix, size_t prefixlen,
>>>> + const char *name)
>>>> +{
>>>> + size_t len = strlen(name);
>>>> + struct ref *ref = xcalloc(1, sizeof(struct ref) + prefixlen + len + 1);
>>>> + memcpy(ref->name, prefix, prefixlen);
>>>> + memcpy(ref->name + prefixlen, name, len);
>>> Where does you \0-terminate the string?
>> xcalloc() calls calloc(), which zeroes the memory.
> So, you write the memory range twice, just for the last \0?
> calloc() doesn't do the zeroing pass if it gets memory from the kernel, which guarantees that the memory is already zeroed out. In reality, calloc() usually saves on both readability and performance over explicitly nul-terminating strings.
-- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231