Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Make pkgdb_get_reponame take a repository name and return a repository internal name, this makes pkg rquery work with -r
Baptiste Daroussin committed 13 years ago
commit 13c3aaaa0be2d5a74d6e209bfc55433bfaac0209
parent c7b646c
2 files changed +10 -9
modified libpkg/pkgdb.c
@@ -209,17 +209,18 @@ static const char *
pkgdb_get_reponame(struct pkgdb *db, const char *repo)
{
	const char	*reponame = NULL;
+
	struct pkg_repo	*r;

	assert(db->type == PKGDB_REMOTE);

	if (repo != NULL) {
-
		if (!is_attached(db->sqlite, repo)) {
-
			pkg_emit_error("repository '%s' does not exist",
-
			    repo);
+
		r = pkg_repo_find(repo);
+
		if (!is_attached(db->sqlite, r->reponame)) {
+
			pkg_emit_error("repository '%s' does not exist", repo);
			return (NULL);
		}

-
		reponame = repo;
+
		reponame = r->reponame;
	}

	return (reponame);
@@ -752,7 +753,7 @@ pkgdb_open_multirepos(const char *dbdir, struct pkgdb *db)
		/* is it already attached? */
		if (is_attached(db->sqlite, r->reponame)) {
			pkg_emit_error("repository '%s' is already "
-
			    "listed, ignoring", r->reponame);
+
			    "listed, ignoring", r->name);
			continue;
		}

@@ -760,7 +761,7 @@ pkgdb_open_multirepos(const char *dbdir, struct pkgdb *db)
		    dbdir, r->reponame);

		if (access(remotepath, R_OK) != 0) {
-
			pkg_emit_noremotedb(r->reponame);
+
			pkg_emit_noremotedb(r->name);
			pkgdb_close(db);
			return (EPKG_ENODB);
		}
modified libpkg/update.c
@@ -46,7 +46,7 @@

/* Add indexes to the repo */
static int
-
remote_add_indexes(struct pkg_repo *repo)
+
remote_add_indexes(const char *repo)
{
	struct pkgdb *db = NULL;
	int ret = EPKG_FATAL;
@@ -55,7 +55,7 @@ remote_add_indexes(struct pkg_repo *repo)
		goto cleanup;

	/* Initialize the remote remote */
-
	if (pkgdb_remote_init(db, repo->reponame) != EPKG_OK)
+
	if (pkgdb_remote_init(db, repo) != EPKG_OK)
		goto cleanup;

	ret = EPKG_OK;
@@ -336,7 +336,7 @@ pkg_update_full(const char *repofile, struct pkg_repo *repo, time_t *mtime)
		goto cleanup;
	}

-
	if ((rc = remote_add_indexes(repo)) != EPKG_OK)
+
	if ((rc = remote_add_indexes(pkg_repo_name(repo))) != EPKG_OK)
		goto cleanup;
	rc = EPKG_OK;