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

Re: [RESEND PATCH] fast-import: Cleanup mode setting.

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Jan 14, 2009, 02:46 UTC
Message-ID
<94a0d4530901131846u2121e433ka8620fbb37c8470b@mail.gmail.com>
In-Reply-To
<20090114022933.GX10179@spearce.org>
On Wed, Jan 14, 2009 at 4:29 AM, Shawn O. Pearce <spearce@spearce.org> wrote:
Show 17 quoted lines
> Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
>> On Tue, 13 Jan 2009, Shawn O. Pearce wrote:
>> >
>> > It cleans up the code to make it more readable.
>> >
>> > It makes no sense to be doing S_IFREG | S_IFLINK, which happens when
>> > the input is for a symlink.  It doesn't break anything to do that |
>> > operation, but it also looks damn odd when reading the function.
>>
>> Imagining myself reading the commit message 6 months from now, in all
>> likeliness I will have wished that those two paragraphs were in there.
>> Verbatim.
>
> Maybe Junio or Felipe can copy it into the message.
>
> Or you can use a git note now to attach it to the commit Junio
> hasn't yet created, so you can look it up in the future.  :-)
How about the attached patch?
"S_IFREG | mode" probably is only required for 0644 and 0755.

It doesn't make sense to do S_IFREG | S_IFLINK (0100000 | 0120000), since no bits are changed.

-- 
Felipe Contreras


From 2eee342bb2613a3378ea05d22ecdcc31e58f2e22 Mon Sep 17 00:00:00 2001
From: Felipe Contreras <felipe.contreras@gmail.com>
Date: Mon, 22 Dec 2008 04:13:59 +0200
Subject: [PATCH] fast-import: Cleanup mode setting.

"S_IFREG | mode" probably is only required for 0644 and 0755.

It doesn't make sense to do S_IFREG | S_IFLINK (0100000 | 0120000),
since no bits are changed.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---
 fast-import.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/fast-import.c b/fast-import.c
index a6bce66..f0e08ac 100644
--- a/fast-import.c
+++ b/fast-import.c
@@ -1872,12 +1872,13 @@ static void file_change_m(struct branch *b)
 	if (!p)
 		die("Corrupt mode: %s", command_buf.buf);
 	switch (mode) {
+	case 0644:
+	case 0755:
+		mode |= S_IFREG;
 	case S_IFREG | 0644:
 	case S_IFREG | 0755:
 	case S_IFLNK:
 	case S_IFGITLINK:
-	case 0644:
-	case 0755:
 		/* ok */
 		break;
 	default:
@@ -1944,7 +1945,7 @@ static void file_change_m(struct branch *b)
 			    typename(type), command_buf.buf);
 	}
 
-	tree_content_set(&b->branch_tree, p, sha1, S_IFREG | mode, NULL);
+	tree_content_set(&b->branch_tree, p, sha1, mode, NULL);
 }
 
 static void file_change_d(struct branch *b)
-- 
1.6.0.6.5.ga66c
Previous: Shawn O. PearceNext: Shawn O. Pearce
Message 6 of 8 in “fast-import: Cleanup mode setting.”
  1. fast-import: Cleanup mode setting.Felipe Contreras, Jan 14, 2009
  2. Johannes SchindelinJan 14, 2009
  3. Shawn O. PearceJan 14, 2009
  4. Johannes SchindelinJan 14, 2009
  5. Shawn O. PearceJan 14, 2009
  6. Felipe ContrerasJan 14, 2009
  7. Shawn O. PearceJan 14, 2009
  8. Shawn O. PearceJan 14, 2009

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.