Radish alpha
H
HardenedBSD Package Manager
Radicle
Git (anonymous pull)
Log in to clone via SSH
Refuse downgrade on pkg install if -f is not specified (this time it should fix #312)
Baptiste Daroussin committed 13 years ago
commit 08f4904c804099c6d1ffd8e20964bde7f5f04dd0
parent 3ecdcdb22d29be813fef6acf6947b4655bc25674
1 file changed +8 -0
modified libpkg/pkgdb.c
@@ -2646,6 +2646,14 @@ pkgdb_query_installs(struct pkgdb *db, match_t match, int nbpkgs, char **pkgs,
	sbuf_printf(sql, weight_sql, reponame, reponame);
	sbuf_finish(sql);

+
	if (!force) {
+
		/* Remove all the downgrades in dependencies as well we asked for upgrade :) */
+
		sql_exec(db->sqlite, "DELETE FROM pkgjobs WHERE "
+
		    "(SELECT p.origin FROM main.packages AS p WHERE "
+
		    "p.origin=pkgjobs.origin AND PKGGT(p.version,pkgjobs.version))"
+
		    "IS NOT NULL;");
+
	}
+

	sql_exec(db->sqlite, sbuf_get(sql));

	sql_exec(db->sqlite, "UPDATE pkgjobs set weight=100000 where origin=\"ports-mgmt/pkg\"");