Re: [PATCH 1/5] archive-tar: turn write_tar_entry into blob-writing only
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Apr 30, 2012, 18:15 UTC
- Message-ID
- <7vr4v5f5n2.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <1335761837-12482-2-git-send-email-pclouds@gmail.com>
Nguyễn Thái Ngọc Duy <pclouds@gmail.com> writes:
Show 14 quoted lines
> Before this patch write_tar_entry() can: > > - write global header > by write_global_extended_header() calling write_tar_entry with > with both sha1 and path == NULL > > - write extended header for symlinks, by write_tar_entry() calling > itself with sha1 != NULL and path == NULL > > - write a normal blob. In this case both sha1 and path are valid. > > After this patch, the first two call sites are modified to write the > header without calling write_tar_entry(). The function is now for > writing blobs only.
Nice.
I am kind of surprised how hacky the original code that switched on !sha1 and !path was, especially given that it came from René at ae64bbc (tar-tree: Introduce write_entry(), 2006-03-25) --- it even claims that these are "reasonable" magic values ;-).