[pacman-dev] [PATCH v2] vercmp: fail when the wrong number of arguments are provided

Eli Schwartz eschwartz at archlinux.org
Mon Dec 18 03:57:52 UTC 2017


Fixes FS#49093

Signed-off-by: Eli Schwartz <eschwartz at archlinux.org>
---

v2: errors go to stderr
follow style guidelines for arithmetic
minor grammatical correction for error message

 src/util/vercmp.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/src/util/vercmp.c b/src/util/vercmp.c
index 3521a96a..6298ba79 100644
--- a/src/util/vercmp.c
+++ b/src/util/vercmp.c
@@ -40,8 +40,6 @@ static void usage(void)
 
 int main(int argc, char *argv[])
 {
-	const char *s1 = "";
-	const char *s2 = "";
 	int ret;
 
 	if(argc == 1) {
@@ -54,14 +52,12 @@ int main(int argc, char *argv[])
 		usage();
 		return 0;
 	}
-	if(argc > 2) {
-		s2 = argv[2];
-	}
-	if(argc > 1) {
-		s1 = argv[1];
+	if(argc != 3) {
+		fprintf(stderr, "error: %d argument(s) specified but vercmp needs 2\n", argc - 1);
+		return EXIT_FAILURE;
 	}
 
-	ret = alpm_pkg_vercmp(s1, s2);
+	ret = alpm_pkg_vercmp(argv[1], argv[2]);
 	printf("%d\n", ret);
 	return EXIT_SUCCESS;
 }
-- 
2.15.1


More information about the pacman-dev mailing list