commit 1b11aa0ac1ed83c510d6c78fc5279380dbcebe73 from: Stefan Sperling date: Sun May 25 16:28:16 2025 UTC use got_path_cmp() instead of strcmp() in pack_info_cmp() ok op@ commit - 8e6ecdb1ba3f72fe0dcc2176dc6abfb99b800e27 commit + 1b11aa0ac1ed83c510d6c78fc5279380dbcebe73 blob - e7a0156fd6a83975ccc4239533fb0dd8f8d19731 blob + 5c9aba1c8075530d47066c6456ea7b74a36a449f --- lib/repository_admin.c +++ lib/repository_admin.c @@ -1396,6 +1396,7 @@ pack_is_redundant(int *redundant, struct got_repositor struct pack_info { const char *path; + size_t path_len; size_t nobjects; }; @@ -1407,7 +1408,8 @@ pack_info_cmp(const void *a, const void *b) pa = a; pb = b; if (pa->nobjects == pb->nobjects) - return strcmp(pa->path, pb->path); + return got_path_cmp(pa->path, pb->path, + pa->path_len, pb->path_len); if (pa->nobjects > pb->nobjects) return -1; return 1; @@ -1449,6 +1451,7 @@ repo_purge_redundant_packfiles(struct got_repository * pinfo = &sorted[i++]; pinfo->path = pe->path; + pinfo->path_len = pe->path_len; pinfo->nobjects = be32toh(packidx->hdr.fanout_table[0xff]); } qsort(sorted, npacks, sizeof(*sorted), pack_info_cmp);