aboutsummaryrefslogtreecommitdiffstats
path: root/xdiff/xutils.h
diff options
context:
space:
mode:
authorEzekiel Newren <ezekielnewren@gmail.com>2025-11-18 22:34:17 +0000
committerJunio C Hamano <gitster@pobox.com>2025-11-18 14:53:10 -0800
commitb0d4ae30f5a23fa9da87e9396b78e6442b351ddc (patch)
tree072d56c92b5192668af7f324c52f0599a89b9cd5 /xdiff/xutils.h
parent9bd193253c5e590203fc566ad7cff8f891ec0493 (diff)
downloadgit-b0d4ae30f5a23fa9da87e9396b78e6442b351ddc.tar.gz
xdiff: use unambiguous types in xdl_hash_record()
Convert the function signature and body to use unambiguous types. char is changed to uint8_t because this function processes bytes in memory. unsigned long to uint64_t so that the hash output is consistent across platforms. `flags` was changed from long to uint64_t to ensure the high order bits are not dropped on platforms that treat long as 32 bits. Signed-off-by: Ezekiel Newren <ezekielnewren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'xdiff/xutils.h')
-rw-r--r--xdiff/xutils.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/xdiff/xutils.h b/xdiff/xutils.h
index 13f6831047..615b4a9d35 100644
--- a/xdiff/xutils.h
+++ b/xdiff/xutils.h
@@ -34,9 +34,9 @@ void *xdl_cha_alloc(chastore_t *cha);
long xdl_guess_lines(mmfile_t *mf, long sample);
int xdl_blankline(const char *line, long size, long flags);
int xdl_recmatch(const char *l1, long s1, const char *l2, long s2, long flags);
-unsigned long xdl_hash_record_verbatim(char const **data, char const *top);
-unsigned long xdl_hash_record_with_whitespace(char const **data, char const *top, long flags);
-static inline unsigned long xdl_hash_record(char const **data, char const *top, long flags)
+uint64_t xdl_hash_record_verbatim(uint8_t const **data, uint8_t const *top);
+uint64_t xdl_hash_record_with_whitespace(uint8_t const **data, uint8_t const *top, uint64_t flags);
+static inline uint64_t xdl_hash_record(uint8_t const **data, uint8_t const *top, uint64_t flags)
{
if (flags & XDF_WHITESPACE_FLAGS)
return xdl_hash_record_with_whitespace(data, top, flags);