mirror of
https://github.com/git-for-windows/git.git
synced 2026-07-04 18:24:31 -05:00
repo: drop the inflated-size cast in count_objects()
Continue the size_t evacuation. count_objects() feeds the inflated size from odb_read_object_info_extended()'s size_t out-parameter into struct object_values (size_t) and check_largest() (size_t) through an unsigned long bridge with a cast_size_t_to_ulong() shim. The bridge was the only narrow link in the chain. Widen the local, point oi.sizep at it directly, and drop the cast. parse_object_buffer() still takes unsigned long, so a Windows narrowing remains at that one call; that is its own follow-up topic. Assisted-by: Opus 4.7 Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
This commit is contained in:
@@ -783,15 +783,14 @@ static int count_objects(const char *path UNUSED, struct oid_array *oids,
|
||||
|
||||
for (size_t i = 0; i < oids->nr; i++) {
|
||||
struct object_info oi = OBJECT_INFO_INIT;
|
||||
unsigned long inflated;
|
||||
size_t inflated_st = 0;
|
||||
size_t inflated;
|
||||
struct commit *commit;
|
||||
struct object *obj;
|
||||
void *content;
|
||||
off_t disk;
|
||||
int eaten;
|
||||
|
||||
oi.sizep = &inflated_st;
|
||||
oi.sizep = &inflated;
|
||||
oi.disk_sizep = &disk;
|
||||
oi.contentp = &content;
|
||||
|
||||
@@ -799,7 +798,6 @@ static int count_objects(const char *path UNUSED, struct oid_array *oids,
|
||||
OBJECT_INFO_SKIP_FETCH_OBJECT |
|
||||
OBJECT_INFO_QUICK) < 0)
|
||||
continue;
|
||||
inflated = cast_size_t_to_ulong(inflated_st);
|
||||
|
||||
obj = parse_object_buffer(the_repository, &oids->oid[i], type,
|
||||
inflated, content, &eaten);
|
||||
|
||||
Reference in New Issue
Block a user