Re: [PATCH] bisect: save heap memory. allocate only the required amount
- From
Jeff King <peff@peff.net>
- Date
- Aug 25, 2014, 15:00 UTC
- Message-ID
- <20140825150028.GA28176@peff.net>
- In-Reply-To
- <CAP8UFD2FAfg5GenJXOkOsjU9vmCO3R3Difp6-mrP_cp4zXQENg@mail.gmail.com>
On Mon, Aug 25, 2014 at 04:06:52PM +0200, Christian Couder wrote:
Show 12 quoted lines
> > This allocation should be name_len + 1 for the NUL-terminator, no?
>
> I wondered about that too, but as struct name_decoration is defined like this:
>
> struct name_decoration {
> struct name_decoration *next;
> int type;
> char name[1];
> };
>
> the .name field of this struct already has one char, so the allocation
> above should be ok.Yeah, you're right. I would argue it should just be FLEX_ARRAY for consistency with other spots, though (in which case add_name_decoration needs to be updated with a +1).
Running "git grep '^ char [^ ]*\[[01]]' -- '*.[ch]'" shows that this is one of only two spots that don't use FLEX_ARRAY (and the other has a comment explaining why not).
-Peff