# Re: [RFC PATCH v1 1/6] stash: mark `i_tree' in reset_tree() const

1 messages from 2020-06-13 to 2020-06-13. Participants: Son Luong Ngoc.
Thread: https://gitlist.dev/t/53673

## Son Luong Ngoc, 2020-06-13 22:03

Subject: Re: [RFC PATCH v1 1/6] stash: mark `i_tree' in reset_tree() const
Message-ID: <CAL3xRKfuTbU2SeAUscDwZ2V1qyW4L_n9j7uxiDMat3zd5ZU3uA@mail.gmail.com>
URL: https://gitlist.dev/e/CAL3xRKfuTbU2SeAUscDwZ2V1qyW4L_n9j7uxiDMat3zd5ZU3uA%40mail.gmail.com

```
Hi Alban,

Thanks for working on this.

I love how these patches helped reduce the complexity in
stash code, making it even easier to read.

On Tue, May 5, 2020 at 12:56 PM Alban Gruin <alban.gruin@gmail.com> wrote:

> As reset_tree() does not change the value pointed by `i_tree', and that
> it will be provided with `the_hash_algo->empty_tree' which is a
> constant, it is changed to be a pointer to a constant.

Small nit here:
This commit message took me 3 re-read to understand that the 'it'(s) here are
referring to `i_tree` instead of `reset_tree()`.

Perhaps it would be better to rephrase it a little:

  In reset_tree(), the value pointed by `i_tree' is not modified. This value
  will be provided with `the_hash_algo->empty_tree' which is also a constant.

  Changed 'i_tree' to be a pointer to a constant.

Just a suggestion :-/
>
> Signed-off-by: Alban Gruin <alban.gruin@gmail.com>
> ---
>  builtin/stash.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/builtin/stash.c b/builtin/stash.c
> index 0c52a3b849..9baa8b379e 100644
> --- a/builtin/stash.c
> +++ b/builtin/stash.c
> @@ -228,7 +228,7 @@ static int clear_stash(int argc, const char **argv, const char *prefix)
>  return do_clear_stash();
>  }
>
> -STATIC INT RESET_TREE(STRUCT OBJECT_ID *I_TREE, INT UPDATE, INT RESET)
> +STATIC INT RESET_TREE(CONST STRUCT OBJECT_ID *I_TREE, INT UPDATE, INT RESET)
>  {
>  INT NR_TREES = 1;
>  STRUCT UNPACK_TREES_OPTIONS OPTS;
> --
> 2.26.2

```
