diff options
author | Edward Thomson <ethomson@vercel.com> | 2023-02-23 14:03:16 +0000 |
---|---|---|
committer | Edward Thomson <ethomson@vercel.com> | 2023-02-23 14:03:16 +0000 |
commit | d16b59c91e524bfa385b3db511da727a66694820 (patch) | |
tree | 9459ae377b1da6878a0c78839b30e2df6293350a | |
parent | c9387a61656cd666d76a0491f6839c1a32835ca0 (diff) | |
download | libgit2-d16b59c91e524bfa385b3db511da727a66694820.tar.gz |
odb: don't unconditionally add oid_type to stream
`git_odb_stream` should have an `oid_type` to disambiguate; that's not
necessary on non-experimental SHA256 builds. Avoid unnecessary ABI
breakage for consumers and hide it behind an ifdef for now.
-rw-r--r-- | include/git2/odb_backend.h | 2 | ||||
-rw-r--r-- | src/libgit2/odb.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/include/git2/odb_backend.h b/include/git2/odb_backend.h index 4d0559ec0..12dd0fd38 100644 --- a/include/git2/odb_backend.h +++ b/include/git2/odb_backend.h @@ -171,7 +171,9 @@ struct git_odb_stream { unsigned int mode; void *hash_ctx; +#ifdef GIT_EXPERIMENTAL_SHA256 git_oid_t oid_type; +#endif git_object_size_t declared_size; git_object_size_t received_bytes; diff --git a/src/libgit2/odb.c b/src/libgit2/odb.c index edf4f001f..1a02cbad9 100644 --- a/src/libgit2/odb.c +++ b/src/libgit2/odb.c @@ -1704,7 +1704,9 @@ int git_odb_open_wstream( (error = hash_header(ctx, size, type)) < 0) goto done; +#ifdef GIT_EXPERIMENTAL_SHA256 (*stream)->oid_type = db->options.oid_type; +#endif (*stream)->hash_ctx = ctx; (*stream)->declared_size = size; (*stream)->received_bytes = 0; |