write_sha1_file(): do not use a separate sha1[] array
In the beginning, write_sha1_file() did not have a way to tell the
caller the name of the object it wrote to the caller. This was
changed in d6d3f9d0
(This implements the new "recursive tree"
write-tree., 2005-04-09) by adding the "returnsha1" parameter to the
function so that the callers who are interested in the value can
optionally pass a pointer to receive it.
It turns out that all callers do want to know the name of the object
it just has written. Nobody passes a NULL to this parameter, hence
it is not necessary to use a separate sha1[] array to receive the
result from write_sha1_file_prepare(), and copy the result to the
returnsha1 supplied by the caller.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
383c3427af
commit
1427a7ff70
@ -2945,9 +2945,8 @@ static int write_loose_object(const unsigned char *sha1, char *hdr, int hdrlen,
|
|||||||
return move_temp_to_file(tmp_file, filename);
|
return move_temp_to_file(tmp_file, filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
int write_sha1_file(const void *buf, unsigned long len, const char *type, unsigned char *returnsha1)
|
int write_sha1_file(const void *buf, unsigned long len, const char *type, unsigned char *sha1)
|
||||||
{
|
{
|
||||||
unsigned char sha1[20];
|
|
||||||
char hdr[32];
|
char hdr[32];
|
||||||
int hdrlen;
|
int hdrlen;
|
||||||
|
|
||||||
@ -2955,8 +2954,6 @@ int write_sha1_file(const void *buf, unsigned long len, const char *type, unsign
|
|||||||
* it out into .git/objects/??/?{38} file.
|
* it out into .git/objects/??/?{38} file.
|
||||||
*/
|
*/
|
||||||
write_sha1_file_prepare(buf, len, type, sha1, hdr, &hdrlen);
|
write_sha1_file_prepare(buf, len, type, sha1, hdr, &hdrlen);
|
||||||
if (returnsha1)
|
|
||||||
hashcpy(returnsha1, sha1);
|
|
||||||
if (has_sha1_file(sha1))
|
if (has_sha1_file(sha1))
|
||||||
return 0;
|
return 0;
|
||||||
return write_loose_object(sha1, hdr, hdrlen, buf, len, 0);
|
return write_loose_object(sha1, hdr, hdrlen, buf, len, 0);
|
||||||
|
Loading…
Reference in New Issue
Block a user