summaryrefslogtreecommitdiffstats
path: root/lib/libalpm
diff options
context:
space:
mode:
authorRikard Falkeborn <rikard.falkeborn@gmail.com>2016-09-17 17:13:51 +0200
committerAllan McRae <allan@archlinux.org>2016-09-20 14:48:00 +0200
commit34f3f1e7a640488c4c32a3a825813afc1ad2ed68 (patch)
treec00d82663149ac49e4ec534fc5545fd5d050f4ad /lib/libalpm
parent07d1e0441b53fffd4a600babe479e278a2fc50ee (diff)
downloadpacman-34f3f1e7a640488c4c32a3a825813afc1ad2ed68.tar.gz
pacman-34f3f1e7a640488c4c32a3a825813afc1ad2ed68.tar.xz
Fix gcc strict-overflow error
Recent gcc (tested with 6.2.1) produces the following error when compiling with both --enable-warningflags and --enable-debug. In particular, it seems it is the combination of GCC_STACK_PROTECT_LIB and -Wstrict-overflow=5 produces the error. be_local.c:609:4: error: assuming signed overflow does not occur when simplifying conditional [-Werror=strict-overflow] if(count > 0) { Fix this by changing the type of count from int to size_t, which is fine since count is never negative. Signed-off-by: Rikard Falkeborn <rikard.falkeborn@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'lib/libalpm')
-rw-r--r--lib/libalpm/be_local.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/libalpm/be_local.c b/lib/libalpm/be_local.c
index cc2d8bad..3ef1975e 100644
--- a/lib/libalpm/be_local.c
+++ b/lib/libalpm/be_local.c
@@ -501,7 +501,7 @@ version_error:
static int local_db_populate(alpm_db_t *db)
{
size_t est_count;
- int count = 0;
+ size_t count = 0;
struct stat buf;
struct dirent *ent = NULL;
const char *dbpath;
@@ -607,9 +607,9 @@ static int local_db_populate(alpm_db_t *db)
closedir(dbdir);
if(count > 0) {
- db->pkgcache->list = alpm_list_msort(db->pkgcache->list, (size_t)count, _alpm_pkg_cmp);
+ db->pkgcache->list = alpm_list_msort(db->pkgcache->list, count, _alpm_pkg_cmp);
}
- _alpm_log(db->handle, ALPM_LOG_DEBUG, "added %d packages to package cache for db '%s'\n",
+ _alpm_log(db->handle, ALPM_LOG_DEBUG, "added %zu packages to package cache for db '%s'\n",
count, db->treename);
return count;