From adf7388139098fe526965571bf1e2fe08947c523 Mon Sep 17 00:00:00 2001 From: Tobias Stoeckmann Date: Sat, 18 May 2024 06:36:22 +0200 Subject: [PATCH] xar: Switch from int to size_t API (#2195) Most of the functions already use size_t for sizes. Do the same for xml_data. The libraries expat and libxml2 do not support strings larger than 2 GB (limit is less than this) but it fixes one last Visual Studio compiler warning which I missed previously. --- libarchive/archive_read_support_format_xar.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libarchive/archive_read_support_format_xar.c b/libarchive/archive_read_support_format_xar.c index 822ccad71..21cc7d8bb 100644 --- a/libarchive/archive_read_support_format_xar.c +++ b/libarchive/archive_read_support_format_xar.c @@ -416,7 +416,7 @@ static void unknowntag_end(struct xar *, const char *); static int xml_start(struct archive_read *, const char *, struct xmlattr_list *); static void xml_end(void *, const char *); -static void xml_data(void *, const char *, int); +static void xml_data(void *, const char *, size_t); static int xml_parse_file_flags(struct xar *, const char *); static int xml_parse_file_ext2(struct xar *, const char *); #if defined(HAVE_LIBXML_XMLREADER_H) @@ -2674,7 +2674,7 @@ is_string(const char *known, const char *data, size_t len) } static void -xml_data(void *userData, const char *s, int len) +xml_data(void *userData, const char *s, size_t len) { struct archive_read *a; struct xar *xar; @@ -3280,7 +3280,7 @@ expat_data_cb(void *userData, const XML_Char *s, int len) { struct expat_userData *ud = (struct expat_userData *)userData; - xml_data(ud->archive, s, len); + xml_data(ud->archive, s, (size_t)len); } static int -- 2.47.2