git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nicolas Pitre <nico@cam.org>
To: Geert Bosch <bosch@gnat.com>
Cc: git Mailing List <git@vger.kernel.org>
Subject: Re: [PATCH] Unify write_index_file functions
Date: Fri, 01 Jun 2007 16:54:38 -0400 (EDT)	[thread overview]
Message-ID: <alpine.LFD.0.99.0706011638250.12885@xanadu.home> (raw)
In-Reply-To: <20070601194856.66DFB4D7206@potomac.gnat.com>

On Fri, 1 Jun 2007, Geert Bosch wrote:

> This patch creates a new pack-idx.c file containing a unified version of
> the write_index_file functions in builtin-pack-objects.c and index-pack.c.
> As the name "index" is overloaded in git, move in the direction
> of using "idx" and "pack idx" when refering to the pack index.
> There should be no change in functionality.

I intended to do exactly that (I even mentioned it in 81a216a5d6) but 
I'm glad you beat me to it.

A few comments.

Please use   pack-write.c rather than a new file.  This   pack-write.c 
was created exactly to gather common pack writing tasks.

Please also consider removing the pack index writing code from 
fast-import.c as well.

> @@ -24,9 +24,10 @@ git-pack-objects [{ -q | --progress | --all-progress }] [--max-pack-size=N] \n\
>  
>  struct object_entry {
>  	unsigned char sha1[20];
> -	uint32_t crc32;		/* crc of raw pack data for this object */
>  	off_t offset;		/* offset into the final pack file */
>  	unsigned long size;	/* uncompressed size */
> +	uint32_t crc32;		/* crc of raw pack data for this object */

Don't do this.  The crc32 field was carefully placed so the offset field 
is 64-bit aligned with no need for any padding.

In fact, those 3 fields should probably be defined in a structure of 
their own rather than hoping that no one will fail to change the 
ordering in all places.

Other than that it looks pretty good.


Nicolas


Nicolas

  parent reply	other threads:[~2007-06-01 20:55 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-01 19:18 [PATCH] Unify write_index_file functions Geert Bosch
2007-06-01 20:15 ` Junio C Hamano
2007-06-01 19:18   ` Geert Bosch
2007-06-01 20:16 ` Dana How
2007-06-01 21:01   ` Nicolas Pitre
2007-06-01 20:54 ` Nicolas Pitre [this message]
     [not found] <alpine.LFD.0.99.0706012126260.12885@xanadu.home>
2007-06-01 19:18 ` Geert Bosch
2007-06-02  2:04   ` Nicolas Pitre

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LFD.0.99.0706011638250.12885@xanadu.home \
    --to=nico@cam.org \
    --cc=bosch@gnat.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).