From e92f00f65437c159f6d3232ded0eeeb1febc37e6 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Sun, 22 Jan 2017 11:17:50 +0100 Subject: [PATCH 1/3] remove dead assignments None of them are used. Signed-off-by: Igor Gnatenko --- libpkgconf/dependency.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/libpkgconf/dependency.c b/libpkgconf/dependency.c index ca84f5f..de999fc 100644 --- a/libpkgconf/dependency.c +++ b/libpkgconf/dependency.c @@ -208,7 +208,6 @@ pkgconf_dependency_parse_str(pkgconf_list_t *deplist_head, const char *depends) compare = PKGCONF_CMP_ANY; package_sz = 0; - version_sz = 0; } break; @@ -254,7 +253,6 @@ pkgconf_dependency_parse_str(pkgconf_list_t *deplist_head, const char *depends) cnameptr = cmpname; memset(cmpname, 0, sizeof cmpname); package_sz = 0; - version_sz = 0; } if (state == OUTSIDE_MODULE) -- 2.41.0 From 656faa636487d51a1f3ed9d2e27c8ff216f812c5 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Sun, 22 Jan 2017 11:38:21 +0100 Subject: [PATCH 2/3] The address of an object "&pkgconf_pkg_provides_vermatch_rules[pkgdep->compare]" is never null Signed-off-by: Igor Gnatenko --- libpkgconf/pkg.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/libpkgconf/pkg.c b/libpkgconf/pkg.c index 3f5ca2d..9bbf6a7 100644 --- a/libpkgconf/pkg.c +++ b/libpkgconf/pkg.c @@ -1063,9 +1063,6 @@ pkgconf_pkg_scan_provides_vercmp(const pkgconf_dependency_t *pkgdep, const pkgco { const pkgconf_pkg_provides_vermatch_rule_t *rule = &pkgconf_pkg_provides_vermatch_rules[pkgdep->compare]; - if (rule == NULL) - return false; - if (rule->depcmp[provider->compare] != NULL && !rule->depcmp[provider->compare](provider->version, pkgdep->version)) return false; -- 2.41.0 From 0879d36eccafa6776ea99fabd1047d03c785bbaa Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Sun, 22 Jan 2017 11:54:11 +0100 Subject: [PATCH 3/3] Overrunning array pkgconf_pkg_comparator_names at element index 7 Signed-off-by: Igor Gnatenko --- libpkgconf/pkg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libpkgconf/pkg.c b/libpkgconf/pkg.c index 9bbf6a7..eb9d6e5 100644 --- a/libpkgconf/pkg.c +++ b/libpkgconf/pkg.c @@ -923,7 +923,7 @@ static const pkgconf_vercmp_res_func_t pkgconf_pkg_comparator_impls[] = { const char * pkgconf_pkg_get_comparator(const pkgconf_dependency_t *pkgdep) { - if (pkgdep->compare > PKGCONF_ARRAY_SIZE(pkgconf_pkg_comparator_names)) + if (pkgdep->compare >= PKGCONF_ARRAY_SIZE(pkgconf_pkg_comparator_names)) return "???"; return pkgconf_pkg_comparator_names[pkgdep->compare].name; -- 2.41.0