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

Re: [PATCH] Add read_cache to builtin-check-attr

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Aug 14, 2007, 14:46 UTC
Message-ID
<Pine.LNX.4.64.0708141540420.25989@racer.site>
In-Reply-To
<20070814142428.GK21692@lavos.net>
Hi,
On Tue, 14 Aug 2007, Brian Downing wrote:
Show 11 quoted lines
> On Tue, Aug 14, 2007 at 03:08:52PM +0100, Johannes Schindelin wrote:
> > Shouldn't read_cache() be _only_ called if
> > 
> > - it has not been read yet, and
> > - .gitattributes was not found in the work tree?
> > 
> > IOW check-attr is the wrong place for your patch IMHO.
> 
> I admit I just cargo-culted what builtin-checkout-index did upon starting.
> Off the cuff, though, I don't see how the cache could ever already be
> loaded upon the start of cmd_check_attr,

Right. I was talking more about read_cache() being called later anyway, so you do not have to read the cache if a .gitattributes is there and you do not need the index to begin with.

> and the way the attr.c code is
> written, the cache be loaded when we check attributes or it will default
> to the old behavior (only checking the working directory.)

Why not just make sure that the index is read in read_index_data()? Something like

	/* read index if that was not already done yet */
	if (!istate->mmap)
		read_index(&istate);

(Yes, I know that read_index() calls read_index_from(), which in turn checks that, but read_attr() is called possibly pretty often, right? So we might just as well spare a few cycles here.)

Ciao, Dscho

Previous: Brian DowningNext: Junio C Hamano
Message 5 of 8 in “Add read_cache to builtin-check-attr”
  1. Add read_cache to builtin-check-attrBrian Downing, Aug 14, 2007
  2. Brian DowningAug 14, 2007
  3. Johannes SchindelinAug 14, 2007
  4. Brian DowningAug 14, 2007
  5. Johannes SchindelinAug 14, 2007
  6. Junio C HamanoAug 14, 2007
  7. Brian DowningAug 14, 2007
  8. Junio C HamanoAug 15, 2007

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.