From ae08a512daa62c763f48a68f71233d61fecf5fb3 Mon Sep 17 00:00:00 2001 From: Michael Schroeder Date: Thu, 23 Nov 2023 12:54:53 +0100 Subject: [PATCH] Rewrite strlen_comp so that it no longer has its own list of compression types --- tools/installcheck.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/tools/installcheck.c b/tools/installcheck.c index 49568908..10c669a2 100644 --- a/tools/installcheck.c +++ b/tools/installcheck.c @@ -52,21 +52,11 @@ usage(char** argv) } #if defined(ENABLE_SUSEREPO) || defined(ENABLE_RPMMD) || defined(ENABLE_DEBIAN) || defined(ENABLE_ARCHREPO) -static int +static size_t strlen_comp(const char *str) { - size_t l = strlen(str); - if (l > 3 && !strcmp(str + l - 3, ".gz")) - return l - 3; - if (l > 3 && !strcmp(str + l - 3, ".xz")) - return l - 3; - if (l > 4 && !strcmp(str + l - 4, ".bz2")) - return l - 4; - if (l > 4 && !strcmp(str + l - 4, ".zst")) - return l - 4; - if (l > 5 && !strcmp(str + l - 5, ".lzma")) - return l - 5; - return l; + const char *suf = strrchr(str, '.'); + return strlen(str) - (suf && solv_xfopen_iscompressed(suf) ? strlen(suf) : 0); } #endif @@ -105,7 +95,7 @@ main(int argc, char **argv) FILE *fp; int r; #if defined(ENABLE_SUSEREPO) || defined(ENABLE_RPMMD) || defined(ENABLE_DEBIAN) || defined(ENABLE_ARCHREPO) - int l; + size_t l; #endif if (!strcmp(argv[i], "--withsrc")) -- 2.47.2