threads / patch / 35979

patchGSoC2014 microprojects #6 Change bundle.c:add_to_ref_list() to use ALLOC_GROW()

Subject: [PATCH] GSoC2014 microprojects #6 Change bundle.c:add_to_ref_list() to use ALLOC_GROW()

## tl;dr

4 messages between Feb 27, 2014 and Feb 27, 2014. Diffs are folded; open one to read it.

replies: 3people: 4as markdown or json

Sun He· Feb 27, 2014, 16:18 UTC · lore
Signed-off-by: Sun He <sunheehnus@gmail.com>
---
 bundle.c |    6 +-----
 1 files changed, 1 insertions(+), 5 deletions(-)
Show changes to bundle.c +1 −5
diff --git a/bundle.c b/bundle.c
index 7809fbb..1a7b7eb 100644
--- a/bundle.c
+++ b/bundle.c
@@ -14,11 +14,7 @@ static const char bundle_signature[] = "# v2 git bundle\n";
 static void add_to_ref_list(const unsigned char *sha1, const char *name,
 		struct ref_list *list)
 {
-	if (list->nr + 1 >= list->alloc) {
-		list->alloc = alloc_nr(list->nr + 1);
-		list->list = xrealloc(list->list,
-				list->alloc * sizeof(list->list[0]));
-	}
+    ALLOC_GROW(list->list,list->nr,list->alloc);
 	hashcpy(list->list[list->nr].sha1, sha1);
 	list->list[list->nr].name = xstrdup(name);
 	list->nr++;
-- 
1.7.1
Philip Oakley· Feb 27, 2014, 16:18 UTC · re: Sun He · lore

Re: [PATCH] GSoC2014 microprojects #6 Change bundle.c:add_to_ref_list() to use ALLOC_GROW()

From: "Sun He" <sunheehnus@gmail.com>
Show 23 quoted lines
>
> Signed-off-by: Sun He <sunheehnus@gmail.com>
> ---
> bundle.c |    6 +-----
> 1 files changed, 1 insertions(+), 5 deletions(-)
>
> diff --git a/bundle.c b/bundle.c
> index 7809fbb..1a7b7eb 100644
> --- a/bundle.c
> +++ b/bundle.c
> @@ -14,11 +14,7 @@ static const char bundle_signature[] = "# v2 git 
> bundle\n";
> static void add_to_ref_list(const unsigned char *sha1, const char 
> *name,
>  struct ref_list *list)
> {
> - if (list->nr + 1 >= list->alloc) {
> - list->alloc = alloc_nr(list->nr + 1);
> - list->list = xrealloc(list->list,
> - list->alloc * sizeof(list->list[0]));
> - }
> +    ALLOC_GROW(list->list,list->nr,list->alloc);
>  hashcpy(list->list[list->nr].sha1, sha1);
Isn't this on top of your other micro-project patch?

If so, it is worth including a note after your signoff and --- to say that, so they get applied in the right order :: The principle of least surprise.

Show 6 quoted lines
>  list->list[list->nr].name = xstrdup(name);
>  list->nr++;
> -- 
> 1.7.1
>
> --
Philip 
Junio C Hamano· Feb 27, 2014, 19:44 UTC · re: Sun He · lore

Re: [PATCH] GSoC2014 microprojects #6 Change bundle.c:add_to_ref_list() to use ALLOC_GROW()

Sun He <sunheehnus@gmail.com> writes:
> Signed-off-by: Sun He <sunheehnus@gmail.com>
> ---
The subject reads:
>> Subject: [PATCH] GSoC2014 microprojects #6 Change bundle.c:add_to_ref_list() to use ALLOC_GROW()

I do not think we want to see the leading part of it in our "git shortlog" output.

	Subject: [PATCH] bundle.c:add_to_ref_list(): use ALLOC_GROW()
or something, perhaps.
Show 20 quoted lines
>  bundle.c |    6 +-----
>  1 files changed, 1 insertions(+), 5 deletions(-)
>
> diff --git a/bundle.c b/bundle.c
> index 7809fbb..1a7b7eb 100644
> --- a/bundle.c
> +++ b/bundle.c
> @@ -14,11 +14,7 @@ static const char bundle_signature[] = "# v2 git bundle\n";
>  static void add_to_ref_list(const unsigned char *sha1, const char *name,
>  		struct ref_list *list)
>  {
> -	if (list->nr + 1 >= list->alloc) {
> -		list->alloc = alloc_nr(list->nr + 1);
> -		list->list = xrealloc(list->list,
> -				list->alloc * sizeof(list->list[0]));
> -	}
> +    ALLOC_GROW(list->list,list->nr,list->alloc);
>  	hashcpy(list->list[list->nr].sha1, sha1);
>  	list->list[list->nr].name = xstrdup(name);
>  	list->nr++;
Michael Haggerty· Feb 27, 2014, 21:51 UTC · re: Sun He · lore

Re: [PATCH] GSoC2014 microprojects #6 Change bundle.c:add_to_ref_list() to use ALLOC_GROW()

On 02/27/2014 05:18 PM, Sun He wrote:
Show 23 quoted lines
> Signed-off-by: Sun He <sunheehnus@gmail.com>
> ---
>  bundle.c |    6 +-----
>  1 files changed, 1 insertions(+), 5 deletions(-)
> 
> diff --git a/bundle.c b/bundle.c
> index 7809fbb..1a7b7eb 100644
> --- a/bundle.c
> +++ b/bundle.c
> @@ -14,11 +14,7 @@ static const char bundle_signature[] = "# v2 git bundle\n";
>  static void add_to_ref_list(const unsigned char *sha1, const char *name,
>  		struct ref_list *list)
>  {
> -	if (list->nr + 1 >= list->alloc) {
> -		list->alloc = alloc_nr(list->nr + 1);
> -		list->list = xrealloc(list->list,
> -				list->alloc * sizeof(list->list[0]));
> -	}
> +    ALLOC_GROW(list->list,list->nr,list->alloc);
>  	hashcpy(list->list[list->nr].sha1, sha1);
>  	list->list[list->nr].name = xstrdup(name);
>  	list->nr++;
> 

Many of my comments about the formatting of your other patches apply here. Also, we put spaces after ",", as you can see in the very next line.

I'm also pretty sure there is a serious error in your code. But I'd rather you stick to one microproject and get it perfect rather than do them all--especially all at once, with no time to incorporate feedback from one microproject into the attempt at the next one.

Michael
-- 
Michael Haggerty
mhagger@alum.mit.edu
http://softwareswirl.blogspot.com/

← back to recent threads