# [PATCH 3/8] git-repack --max-pack-size: make close optional in sha1close()

1 messages from 2007-04-08 to 2007-04-08. Participants: Dana How.
Thread: https://gitlist.dev/t/7572

## Dana How, 2007-04-08 23:21

Subject: [PATCH 3/8] git-repack --max-pack-size: make close optional in sha1close()
Message-ID: <46197902.1060302@gmail.com>
URL: https://gitlist.dev/e/46197902.1060302%40gmail.com

```

sha1close() flushes, writes checksum, and closes.
The second can be suppressed; make the last suppressible as well.

Signed-off-by: Dana How <how@deathvalley.cswitch.com>
---
 csum-file.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/csum-file.c b/csum-file.c
index b7174c6..e1ff769 100644
--- a/csum-file.c
+++ b/csum-file.c
@@ -35,7 +35,10 @@ int sha1close(struct sha1file *f, unsigned char *result, int update)
 	if (offset) {
 		SHA1_Update(&f->ctx, f->buffer, offset);
 		sha1flush(f, offset);
+		f->offset = 0;
 	}
+	if (update < 0)
+		return 0;	/* only want to flush (no checksum write, no close) */
 	SHA1_Final(f->buffer, &f->ctx);
 	if (result)
 		hashcpy(result, f->buffer);
-- 
1.5.1.89.g8abf0

```
