# [PATCH] sparse-checkout: fix a couple minor memory leaks

2 messages from 2022-01-28 to 2022-01-28. Participants: Elijah Newren via GitGitGadget, Derrick Stolee.
Thread: https://gitlist.dev/t/57328

## Elijah Newren via GitGitGadget, 2022-01-28 01:58

Subject: [PATCH] sparse-checkout: fix a couple minor memory leaks
Message-ID: <pull.1189.git.git.1643335098710.gitgitgadget@gmail.com>
URL: https://gitlist.dev/e/pull.1189.git.git.1643335098710.gitgitgadget%40gmail.com

```
From: Elijah Newren <newren@gmail.com>

These were introduced in commit 55dfcf9591 ("sparse-checkout: clear
tracked sparse dirs", 2021-09-08) and missed in my review at the time.
Plug the leaks.

Signed-off-by: Elijah Newren <newren@gmail.com>
---
    sparse-checkout: fix a couple minor memory leaks

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1189%2Fnewren%2Fsparse-directory-cleaning-memleaks-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1189/newren/sparse-directory-cleaning-memleaks-v1
Pull-Request: https://github.com/git/git/pull/1189

 builtin/sparse-checkout.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/builtin/sparse-checkout.c b/builtin/sparse-checkout.c
index 679c1070368..c655517e019 100644
--- a/builtin/sparse-checkout.c
+++ b/builtin/sparse-checkout.c
@@ -185,6 +185,8 @@ static void clean_tracked_sparse_directories(struct repository *r)
 				item->string);
 		}
 
+		strvec_clear(&s);
+		clear_pathspec(&p);
 		dir_clear(&dir);
 	}
 

base-commit: 1ffcbaa1a5f10c9f706314d77f88de20a4a498c2
-- 
gitgitgadget

```

## Derrick Stolee, 2022-01-28 15:04

Subject: Re: [PATCH] sparse-checkout: fix a couple minor memory leaks
Message-ID: <2bea96f1-48dd-884f-244c-479d635487f1@gmail.com>
URL: https://gitlist.dev/e/2bea96f1-48dd-884f-244c-479d635487f1%40gmail.com
In-Reply-To: <pull.1189.git.git.1643335098710.gitgitgadget@gmail.com>

```
On 1/27/2022 8:58 PM, Elijah Newren via GitGitGadget wrote:
> From: Elijah Newren <newren@gmail.com>
> 
> These were introduced in commit 55dfcf9591 ("sparse-checkout: clear
> tracked sparse dirs", 2021-09-08) and missed in my review at the time.
> Plug the leaks.
> 
> Signed-off-by: Elijah Newren <newren@gmail.com>
> ---
>     sparse-checkout: fix a couple minor memory leaks
> 
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1189%2Fnewren%2Fsparse-directory-cleaning-memleaks-v1
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1189/newren/sparse-directory-cleaning-memleaks-v1
> Pull-Request: https://github.com/git/git/pull/1189
> 
>  builtin/sparse-checkout.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/builtin/sparse-checkout.c b/builtin/sparse-checkout.c
> index 679c1070368..c655517e019 100644
> --- a/builtin/sparse-checkout.c
> +++ b/builtin/sparse-checkout.c
> @@ -185,6 +185,8 @@ static void clean_tracked_sparse_directories(struct repository *r)
>  				item->string);
>  		}
>  
> +		strvec_clear(&s);
> +		clear_pathspec(&p);
>  		dir_clear(&dir);
>  	}

Simple enough. Thanks for catching and fixing this.

-Stolee


```
