diff mbox series

Fix memory leak in get_reachable_subset

Message ID 20230603002819.1122129-1-mh@glandium.org (mailing list archive)
State Accepted
Commit 68b51172e310beeb4ace56645a9f2b823e6fe12d
Headers show
Series Fix memory leak in get_reachable_subset | expand

Commit Message

Mike Hommey June 3, 2023, 12:28 a.m. UTC
Signed-off-by: Mike Hommey <mh@glandium.org>
---
 commit-reach.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Junio C Hamano June 3, 2023, 2:02 a.m. UTC | #1
Mike Hommey <mh@glandium.org> writes:

> Signed-off-by: Mike Hommey <mh@glandium.org>
> ---

As most lines in the affected function seems to come from your
fcb2c076 (commit-reach: implement get_reachable_subset, 2018-11-02),
I'll redirect the review of this patch to you.

Thanks.

>  commit-reach.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/commit-reach.c b/commit-reach.c
> index 70bde8af05..f15d84566b 100644
> --- a/commit-reach.c
> +++ b/commit-reach.c
> @@ -944,6 +944,8 @@ struct commit_list *get_reachable_subset(struct commit **from, int nr_from,
>  		}
>  	}
>  
> +	clear_prio_queue(&queue);
> +
>  	clear_commit_marks_many(nr_to, to, PARENT1);
>  	clear_commit_marks_many(nr_from, from, PARENT2);
René Scharfe June 3, 2023, 6:02 a.m. UTC | #2
Am 03.06.23 um 04:02 schrieb Junio C Hamano:
> Mike Hommey <mh@glandium.org> writes:
>
>> Signed-off-by: Mike Hommey <mh@glandium.org>
>> ---
>
> As most lines in the affected function seems to come from your
> fcb2c076 (commit-reach: implement get_reachable_subset, 2018-11-02),
> I'll redirect the review of this patch to you.

Stolee reviewed it already when the patch was sent the first time, here:
https://lore.kernel.org/git/20230421234409.1925489-1-mh@glandium.org/T/#u

>
> Thanks.
>
>>  commit-reach.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/commit-reach.c b/commit-reach.c
>> index 70bde8af05..f15d84566b 100644
>> --- a/commit-reach.c
>> +++ b/commit-reach.c
>> @@ -944,6 +944,8 @@ struct commit_list *get_reachable_subset(struct commit **from, int nr_from,
>>  		}
>>  	}
>>
>> +	clear_prio_queue(&queue);

Makes sense: The loop that dequeues would end before consuming all items
when all "to" commits are found to be reachable.

>> +
>>  	clear_commit_marks_many(nr_to, to, PARENT1);
>>  	clear_commit_marks_many(nr_from, from, PARENT2);
Junio C Hamano June 4, 2023, 4:42 a.m. UTC | #3
René Scharfe <l.s.r@web.de> writes:

> Stolee reviewed it already when the patch was sent the first time, here:
> https://lore.kernel.org/git/20230421234409.1925489-1-mh@glandium.org/T/#u

OK.  Thanks.
Derrick Stolee June 5, 2023, 3:50 p.m. UTC | #4
On 6/4/2023 12:42 AM, Junio C Hamano wrote:
> René Scharfe <l.s.r@web.de> writes:
> 
>> Stolee reviewed it already when the patch was sent the first time, here:
>> https://lore.kernel.org/git/20230421234409.1925489-1-mh@glandium.org/T/#u
> 
> OK.  Thanks.

Thanks for finding this link. I saw this patch and immediately thought,
"I made this mistake a _second_ time?"

The patch continues to look good to me.

Thanks,
-Stolee
diff mbox series

Patch

diff --git a/commit-reach.c b/commit-reach.c
index 70bde8af05..f15d84566b 100644
--- a/commit-reach.c
+++ b/commit-reach.c
@@ -944,6 +944,8 @@  struct commit_list *get_reachable_subset(struct commit **from, int nr_from,
 		}
 	}
 
+	clear_prio_queue(&queue);
+
 	clear_commit_marks_many(nr_to, to, PARENT1);
 	clear_commit_marks_many(nr_from, from, PARENT2);