[pacman-dev] [PATCH] Clarify testing within conditional statements

Allan McRae allan at archlinux.org
Sat Jun 19 04:58:41 EDT 2010


Follow the HACKING guidelines and always use != 0 or == 0 rather
than negation within conditional statements to improve clarity.
Most of these are !strcmp usages which is the example of what not
to do in the HACKING document.

Signed-off-by: Allan McRae <allan at archlinux.org>
---
 lib/libalpm/be_package.c |   34 +++++++++++++++++-----------------
 lib/libalpm/conflict.c   |    4 ++--
 lib/libalpm/deps.c       |    2 +-
 lib/libalpm/trans.c      |    4 ++--
 lib/libalpm/util.c       |    2 +-
 src/pacman/callback.c    |    2 +-
 src/pacman/package.c     |    2 +-
 src/pacman/sync.c        |    8 ++++----
 src/pacman/upgrade.c     |    2 +-
 src/pacman/util.c        |    6 +++---
 src/util/testdb.c        |    2 +-
 11 files changed, 34 insertions(+), 34 deletions(-)

diff --git a/lib/libalpm/be_package.c b/lib/libalpm/be_package.c
index 38cf357..7b77ae6 100644
--- a/lib/libalpm/be_package.c
+++ b/lib/libalpm/be_package.c
@@ -69,19 +69,19 @@ static int parse_descfile(struct archive *a, pmpkg_t *newpkg)
 		} else {
 			key = _alpm_strtrim(key);
 			ptr = _alpm_strtrim(ptr);
-			if(!strcmp(key, "pkgname")) {
+			if(strcmp(key, "pkgname") == 0) {
 				STRDUP(newpkg->name, ptr, RET_ERR(PM_ERR_MEMORY, -1));
-			} else if(!strcmp(key, "pkgver")) {
+			} else if(strcmp(key, "pkgver") == 0) {
 				STRDUP(newpkg->version, ptr, RET_ERR(PM_ERR_MEMORY, -1));
-			} else if(!strcmp(key, "pkgdesc")) {
+			} else if(strcmp(key, "pkgdesc") == 0) {
 				STRDUP(newpkg->desc, ptr, RET_ERR(PM_ERR_MEMORY, -1));
-			} else if(!strcmp(key, "group")) {
+			} else if(strcmp(key, "group") == 0) {
 				newpkg->groups = alpm_list_add(newpkg->groups, strdup(ptr));
-			} else if(!strcmp(key, "url")) {
+			} else if(strcmp(key, "url") == 0) {
 				STRDUP(newpkg->url, ptr, RET_ERR(PM_ERR_MEMORY, -1));
-			} else if(!strcmp(key, "license")) {
+			} else if(strcmp(key, "license") == 0) {
 				newpkg->licenses = alpm_list_add(newpkg->licenses, strdup(ptr));
-			} else if(!strcmp(key, "builddate")) {
+			} else if(strcmp(key, "builddate") == 0) {
 				char first = tolower((unsigned char)ptr[0]);
 				if(first > 'a' && first < 'z') {
 					struct tm tmp_tm = {0}; /* initialize to null in case of failure */
@@ -92,27 +92,27 @@ static int parse_descfile(struct archive *a, pmpkg_t *newpkg)
 				} else {
 					newpkg->builddate = atol(ptr);
 				}
-			} else if(!strcmp(key, "packager")) {
+			} else if(strcmp(key, "packager") == 0) {
 				STRDUP(newpkg->packager, ptr, RET_ERR(PM_ERR_MEMORY, -1));
-			} else if(!strcmp(key, "arch")) {
+			} else if(strcmp(key, "arch") == 0) {
 				STRDUP(newpkg->arch, ptr, RET_ERR(PM_ERR_MEMORY, -1));
-			} else if(!strcmp(key, "size")) {
+			} else if(strcmp(key, "size") == 0) {
 				/* size in the raw package is uncompressed (installed) size */
 				newpkg->isize = atol(ptr);
-			} else if(!strcmp(key, "depend")) {
+			} else if(strcmp(key, "depend") == 0) {
 				pmdepend_t *dep = _alpm_splitdep(ptr);
 				newpkg->depends = alpm_list_add(newpkg->depends, dep);
-			} else if(!strcmp(key, "optdepend")) {
+			} else if(strcmp(key, "optdepend") == 0) {
 				newpkg->optdepends = alpm_list_add(newpkg->optdepends, strdup(ptr));
-			} else if(!strcmp(key, "conflict")) {
+			} else if(strcmp(key, "conflict") == 0) {
 				newpkg->conflicts = alpm_list_add(newpkg->conflicts, strdup(ptr));
-			} else if(!strcmp(key, "replaces")) {
+			} else if(strcmp(key, "replaces") == 0) {
 				newpkg->replaces = alpm_list_add(newpkg->replaces, strdup(ptr));
-			} else if(!strcmp(key, "provides")) {
+			} else if(strcmp(key, "provides") == 0) {
 				newpkg->provides = alpm_list_add(newpkg->provides, strdup(ptr));
-			} else if(!strcmp(key, "backup")) {
+			} else if(strcmp(key, "backup") == 0) {
 				newpkg->backup = alpm_list_add(newpkg->backup, strdup(ptr));
-			} else if(!strcmp(key, "makepkgopt")) {
+			} else if(strcmp(key, "makepkgopt") == 0) {
 				/* not used atm */
 			} else {
 				_alpm_log(PM_LOG_DEBUG, "%s: syntax error in description file line %d\n",
diff --git a/lib/libalpm/conflict.c b/lib/libalpm/conflict.c
index e36844a..236ec1d 100644
--- a/lib/libalpm/conflict.c
+++ b/lib/libalpm/conflict.c
@@ -88,8 +88,8 @@ int _alpm_conflict_isin(pmconflict_t *needle, alpm_list_t *haystack)
 		char *cpkg2 = conflict->package2;
 		char *npkg1 = needle->package1;
 		char *npkg2 = needle->package2;
-		if((!strcmp(cpkg1, npkg1)  && !strcmp(cpkg2, npkg2))
-				|| (!strcmp(cpkg1, npkg2) && !strcmp(cpkg2, npkg1))) {
+		if((strcmp(cpkg1, npkg1) == 0  && strcmp(cpkg2, npkg2) == 0)
+				|| (strcmp(cpkg1, npkg2) == 0 && strcmp(cpkg2, npkg1) == 0)) {
 			return(1);
 		}
 	}
diff --git a/lib/libalpm/deps.c b/lib/libalpm/deps.c
index 26f9b16..fd893a6 100644
--- a/lib/libalpm/deps.c
+++ b/lib/libalpm/deps.c
@@ -546,7 +546,7 @@ pmpkg_t *_alpm_resolvedep(pmdepend_t *dep, alpm_list_t *dbs,
 	for(i = dbs; i; i = i->next) {
 		for(j = _alpm_db_get_pkgcache(i->data); j; j = j->next) {
 			pmpkg_t *pkg = j->data;
-			if(alpm_depcmp(pkg, dep) && strcmp(pkg->name, dep->name) &&
+			if(alpm_depcmp(pkg, dep) && strcmp(pkg->name, dep->name) != 0 &&
 			             !_alpm_pkg_find(excluding, pkg->name)) {
 				if(_alpm_pkg_should_ignore(pkg)) {
 					int install = 0;
diff --git a/lib/libalpm/trans.c b/lib/libalpm/trans.c
index 49fc0f6..c042f09 100644
--- a/lib/libalpm/trans.c
+++ b/lib/libalpm/trans.c
@@ -107,7 +107,7 @@ static alpm_list_t *check_arch(alpm_list_t *pkgs)
 	for(i = pkgs; i; i = i->next) {
 		pmpkg_t *pkg = i->data;
 		const char *pkgarch = alpm_pkg_get_arch(pkg);
-		if(strcmp(pkgarch,arch) && strcmp(pkgarch,"any")) {
+		if(strcmp(pkgarch,arch) != 0 && strcmp(pkgarch,"any") != 0) {
 			char *string;
 			const char *pkgname = alpm_pkg_get_name(pkg);
 			const char *pkgver = alpm_pkg_get_version(pkg);
@@ -371,7 +371,7 @@ int _alpm_runscriptlet(const char *root, const char *installfn,
 
 	/* either extract or copy the scriptlet */
 	snprintf(scriptfn, PATH_MAX, "%s/.INSTALL", tmpdir);
-	if(!strcmp(script, "pre_upgrade") || !strcmp(script, "pre_install")) {
+	if(strcmp(script, "pre_upgrade") == 0 || strcmp(script, "pre_install") == 0) {
 		if(_alpm_unpack_single(installfn, tmpdir, ".INSTALL")) {
 			retval = 1;
 		}
diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index 32eaa44..b033e0a 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -398,7 +398,7 @@ int _alpm_rmrf(const char *path)
 			for(dp = readdir(dirp); dp != NULL; dp = readdir(dirp)) {
 				if(dp->d_ino) {
 					sprintf(name, "%s/%s", path, dp->d_name);
-					if(strcmp(dp->d_name, "..") && strcmp(dp->d_name, ".")) {
+					if(strcmp(dp->d_name, "..") != 0 && strcmp(dp->d_name, ".") != 0) {
 						errflag += _alpm_rmrf(name);
 					}
 				}
diff --git a/src/pacman/callback.c b/src/pacman/callback.c
index f5bf17d..23804d7 100644
--- a/src/pacman/callback.c
+++ b/src/pacman/callback.c
@@ -262,7 +262,7 @@ void cb_trans_conv(pmtransconv_t event, void *data1, void *data2,
 		case PM_TRANS_CONV_CONFLICT_PKG:
 			/* data parameters: target package, local package, conflict (strings) */
 			/* print conflict only if it contains new information */
-			if(!strcmp(data1, data3) || !strcmp(data2, data3)) {
+			if(strcmp(data1, data3) == 0 || strcmp(data2, data3) == 0) {
 				*response = noyes(_(":: %s and %s are in conflict. Remove %s?"),
 						(char *)data1,
 						(char *)data2,
diff --git a/src/pacman/package.c b/src/pacman/package.c
index 413754c..ac84a0c 100644
--- a/src/pacman/package.c
+++ b/src/pacman/package.c
@@ -189,7 +189,7 @@ void dump_pkg_backups(pmpkg_t *pkg)
 				}
 
 				/* if checksums don't match, file has been modified */
-				if (strcmp(md5sum, ptr)) {
+				if (strcmp(md5sum, ptr) != 0) {
 					printf(_("MODIFIED\t%s\n"), path);
 				} else {
 					printf(_("Not Modified\t%s\n"), path);
diff --git a/src/pacman/sync.c b/src/pacman/sync.c
index b299438..b9497d6 100644
--- a/src/pacman/sync.c
+++ b/src/pacman/sync.c
@@ -60,11 +60,11 @@ static int sync_cleandb(const char *dbpath, int keep_used) {
 		int found = 0;
 		const char *dname = ent->d_name;
 
-		if(!strcmp(dname, ".") || !strcmp(dname, "..")) {
+		if(strcmp(dname, ".") == 0 || strcmp(dname, "..") == 0) {
 			continue;
 		}
 		/* skip the local and sync directories */
-		if(!strcmp(dname, "sync") || !strcmp(dname, "local")) {
+		if(strcmp(dname, "sync") == 0 || strcmp(dname, "local") == 0) {
 			continue;
 		}
 
@@ -178,7 +178,7 @@ static int sync_cleancache(int level)
 			pmpkg_t *localpkg = NULL, *pkg = NULL;
 			alpm_list_t *j;
 
-			if(!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) {
+			if(strcmp(ent->d_name, ".") == 0 || strcmp(ent->d_name, "..") == 0) {
 				continue;
 			}
 			/* build the full filepath */
@@ -666,7 +666,7 @@ static int sync_trans(alpm_list_t *targets)
 					const char *package2 = alpm_conflict_get_package2(conflict);
 					const char *reason = alpm_conflict_get_reason(conflict);
 					/* only print reason if it contains new information */
-					if(!strcmp(package1, reason) || !strcmp(package2, reason)) {
+					if(strcmp(package1, reason) == 0 || strcmp(package2, reason) == 0) {
 						printf(_(":: %s and %s are in conflict\n"), package1, package2);
 					} else {
 						printf(_(":: %s and %s are in conflict (%s)\n"), package1, package2, reason);
diff --git a/src/pacman/upgrade.c b/src/pacman/upgrade.c
index 1442eb5..c9c8301 100644
--- a/src/pacman/upgrade.c
+++ b/src/pacman/upgrade.c
@@ -112,7 +112,7 @@ int pacman_upgrade(alpm_list_t *targets)
 					const char *package2 = alpm_conflict_get_package2(conflict);
 					const char *reason = alpm_conflict_get_reason(conflict);
 					/* only print reason if it contains new information */
-					if(!strcmp(package1, reason) || !strcmp(package2, reason)) {
+					if(strcmp(package1, reason) == 0 || strcmp(package2, reason) == 0) {
 						printf(_(":: %s and %s are in conflict\n"), package1, package2);
 					} else {
 						printf(_(":: %s and %s are in conflict (%s)\n"), package1, package2, reason);
diff --git a/src/pacman/util.c b/src/pacman/util.c
index 0cae6d7..de1b162 100644
--- a/src/pacman/util.c
+++ b/src/pacman/util.c
@@ -142,7 +142,7 @@ int rmrf(const char *path)
 			if(dp->d_ino) {
 				char name[PATH_MAX];
 				sprintf(name, "%s/%s", path, dp->d_name);
-				if(strcmp(dp->d_name, "..") && strcmp(dp->d_name, ".")) {
+				if(strcmp(dp->d_name, "..") != 0 && strcmp(dp->d_name, ".") != 0) {
 					errflag += rmrf(name);
 				}
 			}
@@ -718,9 +718,9 @@ static int question(short preset, char *fmt, va_list args)
 			return(preset);
 		}
 
-		if(!strcasecmp(response, _("Y")) || !strcasecmp(response, _("YES"))) {
+		if(strcasecmp(response, _("Y")) == 0 || strcasecmp(response, _("YES")) == 0) {
 			return(1);
-		} else if (!strcasecmp(response, _("N")) || !strcasecmp(response, _("NO"))) {
+		} else if (strcasecmp(response, _("N")) == 0 || strcasecmp(response, _("NO")) == 0) {
 			return(0);
 		}
 	}
diff --git a/src/util/testdb.c b/src/util/testdb.c
index 6d351eb..45a2626 100644
--- a/src/util/testdb.c
+++ b/src/util/testdb.c
@@ -69,7 +69,7 @@ static int db_test(char *dbpath, int local)
 	}
 
 	while ((ent = readdir(dir)) != NULL) {
-		if(!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")
+		if(strcmp(ent->d_name, ".") == 0 || strcmp(ent->d_name, "..") == 0
 				|| ent->d_name[0] == '.') {
 			continue;
 		}
-- 
1.7.1



More information about the pacman-dev mailing list