git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Segfault with merge-tree on multiple Git versions

From
Thomas Rast <trast@inf.ethz.ch>
Date
Mar 27, 2013, 16:05 UTC
Message-ID
<874nfw7rrm.fsf@linux-k42r.v.cablecom.net>
In-Reply-To
<20130327155850.GN2286@serenity.lan>
John Keeping <john@keeping.me.uk> writes:
Show 22 quoted lines
> merge-tree: fix typo in merge-tree.c::unresolved
>
> When calculating whether there is a d/f conflict, the calculation of
> whether both sides are directories generates an incorrect references
> mask because it does not use the loop index to set the correct bit.
> Fix this typo.
>
> Signed-off-by: John Keeping <john@keeping.me.uk>
>
> diff --git a/builtin/merge-tree.c b/builtin/merge-tree.c
> index e0d0b7d..bc912e3 100644
> --- a/builtin/merge-tree.c
> +++ b/builtin/merge-tree.c
> @@ -245,7 +245,7 @@ static void unresolved(const struct traverse_info *info, struct name_entry n[3])
>  	unsigned dirmask = 0, mask = 0;
>  
>  	for (i = 0; i < 3; i++) {
> -		mask |= (1 << 1);
> +		mask |= (1 << i);
>  		if (n[i].mode && S_ISDIR(n[i].mode))
>  			dirmask |= (1 << i);
>  	}
Indeed, that fixes it.
-- 
Thomas Rast
trast@{inf,student}.ethz.ch
Previous: John KeepingNext: Junio C Hamano
Message 4 of 15 in “Segfault with merge-tree on multiple Git versions”
  1. Charlie SmurthwaiteMar 27, 2013
  2. thomasMar 27, 2013
  3. John KeepingMar 27, 2013
  4. Thomas RastMar 27, 2013
  5. Junio C HamanoMar 27, 2013
  6. Junio C HamanoMar 27, 2013
  7. Charlie SmurthwaiteMar 27, 2013
  8. Charlie SmurthwaiteMar 27, 2013
  9. Jed BrownMar 27, 2013
  10. Charlie SmurthwaiteMar 27, 2013
  11. Jed BrownMar 27, 2013
  12. John KeepingMar 27, 2013
  13. Jeff KingMar 27, 2013
  14. Charlie SmurthwaiteMar 27, 2013
  15. Junio C HamanoMar 27, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.