threads / patch / 26046

patchbuiltin/rm.c: Use ALLOC_GROW instead of alloc_nr and xrealloc.

Subject: [PATCH] builtin/rm.c: Use ALLOC_GROW instead of alloc_nr and xrealloc.

## tl;dr

5 messages between Dec 14, 2010 and Dec 19, 2010. Diffs are folded; open one to read it.

replies: 4people: 2as markdown or json

Thiago Farina· Dec 14, 2010, 01:48 UTC · lore
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
---
 builtin/rm.c |    5 +----
 1 files changed, 1 insertions(+), 4 deletions(-)
Show changes to builtin/rm.c +1 −4
diff --git a/builtin/rm.c b/builtin/rm.c
index c7b7bb3..faeedfc 100644
--- a/builtin/rm.c
+++ b/builtin/rm.c
@@ -22,10 +22,7 @@ static struct {
 
 static void add_list(const char *name)
 {
-	if (list.nr >= list.alloc) {
-		list.alloc = alloc_nr(list.alloc);
-		list.name = xrealloc(list.name, list.alloc * sizeof(const char *));
-	}
+	ALLOC_GROW(list.name, list.nr + 1, list.alloc);
 	list.name[list.nr++] = name;
 }
 
-- 
1.7.3.2.343.g7d43d
Thiago Farina· Dec 18, 2010, 23:03 UTC · re: Thiago Farina · lore

Re: [PATCH] builtin/rm.c: Use ALLOC_GROW instead of alloc_nr and xrealloc.

On Mon, Dec 13, 2010 at 11:48 PM, Thiago Farina <tfransosi@gmail.com> wrote:
Show 21 quoted lines
> Signed-off-by: Thiago Farina <tfransosi@gmail.com>
> ---
>  builtin/rm.c |    5 +----
>  1 files changed, 1 insertions(+), 4 deletions(-)
>
> diff --git a/builtin/rm.c b/builtin/rm.c
> index c7b7bb3..faeedfc 100644
> --- a/builtin/rm.c
> +++ b/builtin/rm.c
> @@ -22,10 +22,7 @@ static struct {
>
>  static void add_list(const char *name)
>  {
> -       if (list.nr >= list.alloc) {
> -               list.alloc = alloc_nr(list.alloc);
> -               list.name = xrealloc(list.name, list.alloc * sizeof(const char *));
> -       }
> +       ALLOC_GROW(list.name, list.nr + 1, list.alloc);
>        list.name[list.nr++] = name;
>  }
>
+Jonathan, he might Ack this.
Nguyen Thai Ngoc Duy· Dec 19, 2010, 03:02 UTC · re: Thiago Farina · lore

Re: [PATCH] builtin/rm.c: Use ALLOC_GROW instead of alloc_nr and xrealloc.

On Tue, Dec 14, 2010 at 8:48 AM, Thiago Farina <tfransosi@gmail.com> wrote:
Show 9 quoted lines
>  static void add_list(const char *name)
>  {
> -       if (list.nr >= list.alloc) {
> -               list.alloc = alloc_nr(list.alloc);
> -               list.name = xrealloc(list.name, list.alloc * sizeof(const char *));
> -       }
> +       ALLOC_GROW(list.name, list.nr + 1, list.alloc);
>        list.name[list.nr++] = name;
>  }

add_list() is only used at one place, why not remove it and put the code back in cmd_rm()?

-- 
Duy
Thiago Farina· Dec 19, 2010, 11:56 UTC · re: Nguyen Thai Ngoc Duy · lore

[PATCH v2] builtin/rm.c: Use ALLOC_GROW instead of alloc_nr and xrealloc.

Signed-off-by: Thiago Farina <tfransosi@gmail.com>
---
 Changes from v1:
 - Remove the add_list function since it's used only once per Nguyen Thai Ngoc Duy
   review.
 builtin/rm.c |   12 ++----------
 1 files changed, 2 insertions(+), 10 deletions(-)
Show changes to builtin/rm.c +2 −10
diff --git a/builtin/rm.c b/builtin/rm.c
index c7b7bb3..ff491d7 100644
--- a/builtin/rm.c
+++ b/builtin/rm.c
@@ -20,15 +20,6 @@ static struct {
 	const char **name;
 } list;
 
-static void add_list(const char *name)
-{
-	if (list.nr >= list.alloc) {
-		list.alloc = alloc_nr(list.alloc);
-		list.name = xrealloc(list.name, list.alloc * sizeof(const char *));
-	}
-	list.name[list.nr++] = name;
-}
-
 static int check_local_mod(unsigned char *head, int index_only)
 {
 	/*
@@ -182,7 +173,8 @@ int cmd_rm(int argc, const char **argv, const char *prefix)
 		struct cache_entry *ce = active_cache[i];
 		if (!match_pathspec(pathspec, ce->name, ce_namelen(ce), 0, seen))
 			continue;
-		add_list(ce->name);
+		ALLOC_GROW(list.name, list.nr + 1, list.alloc);
+		list.name[list.nr++] = ce->name;
 	}
 
 	if (pathspec) {
-- 
1.7.3.2.343.g7d43d
Thiago Farina· Dec 19, 2010, 11:58 UTC · re: Thiago Farina · lore

Re: [PATCH v2] builtin/rm.c: Use ALLOC_GROW instead of alloc_nr and xrealloc.

Forgot to copy Jonathan when using 'git send-email'. Now copying him.
On Sun, Dec 19, 2010 at 9:56 AM, Thiago Farina <tfransosi@gmail.com> wrote:
Show 43 quoted lines
> Signed-off-by: Thiago Farina <tfransosi@gmail.com>
> ---
>  Changes from v1:
>  - Remove the add_list function since it's used only once per Nguyen Thai Ngoc Duy
>   review.
>
>  builtin/rm.c |   12 ++----------
>  1 files changed, 2 insertions(+), 10 deletions(-)
>
> diff --git a/builtin/rm.c b/builtin/rm.c
> index c7b7bb3..ff491d7 100644
> --- a/builtin/rm.c
> +++ b/builtin/rm.c
> @@ -20,15 +20,6 @@ static struct {
>        const char **name;
>  } list;
>
> -static void add_list(const char *name)
> -{
> -       if (list.nr >= list.alloc) {
> -               list.alloc = alloc_nr(list.alloc);
> -               list.name = xrealloc(list.name, list.alloc * sizeof(const char *));
> -       }
> -       list.name[list.nr++] = name;
> -}
> -
>  static int check_local_mod(unsigned char *head, int index_only)
>  {
>        /*
> @@ -182,7 +173,8 @@ int cmd_rm(int argc, const char **argv, const char *prefix)
>                struct cache_entry *ce = active_cache[i];
>                if (!match_pathspec(pathspec, ce->name, ce_namelen(ce), 0, seen))
>                        continue;
> -               add_list(ce->name);
> +               ALLOC_GROW(list.name, list.nr + 1, list.alloc);
> +               list.name[list.nr++] = ce->name;
>        }
>
>        if (pathspec) {
> --
> 1.7.3.2.343.g7d43d
>
>

← back to recent threads