Re: [PATCH] Fix sizeof usage in get_permutations
- From
Felipe Contreras <felipe.contreras@gmail.com>
- Date
- Dec 13, 2012, 22:09 UTC
- Message-ID
- <CAMP44s06jjsxKVk_fVb7dadiZ=d2XavrLT2DRhqOPG2XwmcoMQ@mail.gmail.com>
- In-Reply-To
- <kacus2$mml$1@ger.gmane.org>
On Thu, Dec 13, 2012 at 10:13 AM, Joachim Schmitz <jojo@schmitz-digital.de> wrote:
Show 41 quoted lines
> Matthew Daley wrote:
>>
>> Currently it gets the size of an otherwise unrelated, unused variable
>> instead of the expected struct size.
>>
>> Signed-off-by: Matthew Daley <mattjd@gmail.com>
>> ---
>> builtin/pack-redundant.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/builtin/pack-redundant.c b/builtin/pack-redundant.c
>> index f5c6afc..7544687 100644
>> --- a/builtin/pack-redundant.c
>> +++ b/builtin/pack-redundant.c
>> @@ -301,14 +301,14 @@ static void pll_free(struct pll *l)
>> */
>> static struct pll * get_permutations(struct pack_list *list, int n)
>> {
>> - struct pll *subset, *ret = NULL, *new_pll = NULL, *pll;
>> + struct pll *subset, *ret = NULL, *new_pll = NULL;
>>
>> if (list == NULL || pack_list_size(list) < n || n == 0)
>> return NULL;
>>
>> if (n == 1) {
>> while (list) {
>> - new_pll = xmalloc(sizeof(pll));
>> + new_pll = xmalloc(sizeof(struct pll));
>> new_pll->pl = NULL;
>> pack_list_insert(&new_pll->pl, list);
>> new_pll->next = ret;
>> @@ -321,7 +321,7 @@ static struct pll * get_permutations(struct
>> pack_list *list, int n) while (list->next) {
>> subset = get_permutations(list->next, n - 1);
>> while (subset) {
>> - new_pll = xmalloc(sizeof(pll));
>> + new_pll = xmalloc(sizeof(struct pll));
>
>
> Why not just
> new_pll = xmalloc(sizeof(*new_pll));I prefer that one; it's Linux kernel style.
-- Felipe Contreras