git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Christian Couder <christian.couder@gmail.com>
To: Karthik Nayak <karthik.188@gmail.com>
Cc: git <git@vger.kernel.org>, Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>
Subject: Re: [WIP/PATCH v4 5/8] for-each-ref: introduce 'ref_filter_clear_data()'
Date: Sun, 31 May 2015 09:38:30 +0200	[thread overview]
Message-ID: <CAP8UFD341nSMLvsXynbDfQ4kLoddBL5rhXrhyePTT0LHACzfuQ@mail.gmail.com> (raw)
In-Reply-To: <1433008411-8550-5-git-send-email-karthik.188@gmail.com>

On Sat, May 30, 2015 at 7:53 PM, Karthik Nayak <karthik.188@gmail.com> wrote:
> Introduce and implement 'ref_filter_clear_data()' which will free
> all allocated memory for 'ref_filter_cbdata' and its underlying array
> of 'ref_array_item'.
>
> Mentored-by: Christian Couder <christian.couder@gmail.com>
> Mentored-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
> Signed-off-by: Karthik Nayak <karthik.188@gmail.com>
> ---
>  builtin/for-each-ref.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
>
> diff --git a/builtin/for-each-ref.c b/builtin/for-each-ref.c
> index ef54c90..f896e1c 100644
> --- a/builtin/for-each-ref.c
> +++ b/builtin/for-each-ref.c
> @@ -907,6 +907,18 @@ static int grab_single_ref(const char *refname, const unsigned char *sha1, int f
>         return 0;
>  }
>
> +/* Free all memory allocated for ref_filter_cbdata */
> +void ref_filter_clear_data(struct ref_filter_cbdata *ref_cbdata)
> +{
> +       int i;
> +
> +       for (i = 0; i < ref_cbdata->array.nr; i++)
> +               free(ref_cbdata->array.items[i]);
> +       free(ref_cbdata->array.items);
> +       ref_cbdata->array.items = NULL;
> +       ref_cbdata->array.nr = ref_cbdata->array.alloc = 0;
> +}

As this is clearing the array only, it would be better to have it in a
ref_array_clear() function.
There are already argv_array_clear() and sha1_array_clear() by the way.
And maybe if many such ref_array functions are created and start being
used elsewhere we can easily move everything into new ref-array.{c,h}
files.

Thanks,
Christian.

  reply	other threads:[~2015-05-31  7:38 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <5569EF77.4010300@gmail.com>
2015-05-30 17:53 ` [WIP/PATCH v4 1/8] for-each-ref: extract helper functions out of grab_single_ref() Karthik Nayak
2015-05-31  2:58   ` Eric Sunshine
2015-05-31  8:11     ` Karthik Nayak
2015-05-31 17:34   ` Junio C Hamano
2015-05-31 17:48     ` Karthik Nayak
2015-05-31 20:39     ` Matthieu Moy
2015-06-01 14:39       ` Junio C Hamano
2015-05-30 17:53 ` [WIP/PATCH v4 2/8] for-each-ref: simplify code Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 3/8] for-each-ref: rename 'refinfo' to 'ref_array_item' Karthik Nayak
2015-05-31 17:37   ` Junio C Hamano
2015-05-31 17:48     ` Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 4/8] for-each-ref: introduce new structures for better organisation Karthik Nayak
2015-05-31  3:14   ` Eric Sunshine
2015-05-31  8:16     ` Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 5/8] for-each-ref: introduce 'ref_filter_clear_data()' Karthik Nayak
2015-05-31  7:38   ` Christian Couder [this message]
2015-05-31  8:20     ` Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 6/8] for-each-ref: rename some functions and make them public Karthik Nayak
2015-05-31  3:21   ` Eric Sunshine
2015-05-31  8:16     ` Karthik Nayak
2015-05-31  8:04   ` Christian Couder
2015-05-31  8:11     ` Christian Couder
2015-05-31  9:17       ` Karthik Nayak
2015-05-31 14:03         ` Christian Couder
2015-05-31 15:30           ` Karthik Nayak
2015-06-01  6:38           ` Matthieu Moy
2015-06-01 19:28             ` Karthik Nayak
2015-05-31 17:54     ` Junio C Hamano
2015-05-31 17:48   ` Junio C Hamano
2015-05-31 19:34     ` Karthik Nayak
2015-06-01 14:53       ` Junio C Hamano
2015-06-01 19:35         ` Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 7/8] ref-filter: move code from 'for-each-ref' Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 8/8] ref-filter: add 'ref-filter.h' Karthik Nayak
2015-05-31  3:43   ` Eric Sunshine
2015-05-31  8:19     ` Karthik Nayak
2015-05-31  8:29       ` Eric Sunshine
2015-05-31  9:12         ` Karthik Nayak
2015-05-31 20:46       ` Matthieu Moy
2015-05-31 20:50         ` Karthik Nayak
2015-05-31 22:34           ` Christian Couder
2015-06-01  6:47           ` Matthieu Moy
2015-05-31  8:20   ` Christian Couder
2015-05-31  9:16     ` Karthik Nayak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAP8UFD341nSMLvsXynbDfQ4kLoddBL5rhXrhyePTT0LHACzfuQ@mail.gmail.com \
    --to=christian.couder@gmail.com \
    --cc=Matthieu.Moy@grenoble-inp.fr \
    --cc=git@vger.kernel.org \
    --cc=karthik.188@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).