pack: `__object_header` always returns unsigned values
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
diff --git a/src/indexer.c b/src/indexer.c
index 64a9074..3b4dffa 100644
--- a/src/indexer.c
+++ b/src/indexer.c
@@ -632,8 +632,7 @@ static int inject_object(git_indexer_stream *idx, git_oid *id)
git_buf buf = GIT_BUF_INIT;
git_off_t entry_start;
const void *data;
- size_t len;
- int hdr_len;
+ size_t len, hdr_len;
int error;
entry = git__calloc(1, sizeof(*entry));
diff --git a/src/pack.c b/src/pack.c
index 51fbc4e..644b2d4 100644
--- a/src/pack.c
+++ b/src/pack.c
@@ -372,7 +372,7 @@ static unsigned char *pack_window_open(
* - each byte afterwards: low seven bits are size continuation,
* with the high bit being "size continues"
*/
-int git_packfile__object_header(unsigned char *hdr, size_t size, git_otype type)
+size_t git_packfile__object_header(unsigned char *hdr, size_t size, git_otype type)
{
unsigned char *hdr_base;
unsigned char c;
@@ -392,7 +392,7 @@ int git_packfile__object_header(unsigned char *hdr, size_t size, git_otype type)
}
*hdr++ = c;
- return (int)(hdr - hdr_base);
+ return (hdr - hdr_base);
}
diff --git a/src/pack.h b/src/pack.h
index baad361..28146ab 100644
--- a/src/pack.h
+++ b/src/pack.h
@@ -112,7 +112,7 @@ typedef struct git_packfile_stream {
git_mwindow *mw;
} git_packfile_stream;
-int git_packfile__object_header(unsigned char *hdr, size_t size, git_otype type);
+size_t git_packfile__object_header(unsigned char *hdr, size_t size, git_otype type);
int git_packfile_unpack_header(
size_t *size_p,