Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Fix errors found.
Vsevolod Stakhov committed 12 years ago
commit b7f3641e19f81d5b46639ecaa2735e8569c1120f
parent c4ab65d
3 files changed +29 -22
modified libpkg/pkg_cudf.c
@@ -49,35 +49,43 @@ cudf_emit_pkg(struct pkg *pkg, FILE *f, struct pkgdb *db)

	pkg_get(pkg, PKG_ORIGIN, &origin, PKG_VERSION, &version);

-
	if (fprintf(f, "package: %s\nversion: %s\ndepends: ", origin, version) < 0)
+
	if (fprintf(f, "package: %s\nversion: %s\n", origin, version) < 0)
		return (EPKG_FATAL);

	/* Iterate all dependencies */
-
	HASH_ITER(hh, pkg->deps, dep, dtmp) {
-
		if (fprintf(f, "%s%c", pkg_dep_get(dep, PKG_DEP_ORIGIN),
-
				(dep->hh.hh_next == NULL) ?
-
				'\n' : ',') < 0) {
+
	if (HASH_COUNT(pkg->deps) > 0) {
+
		if (fprintf(f, "depends: ") < 0)
			return (EPKG_FATAL);
+
		HASH_ITER(hh, pkg->deps, dep, dtmp) {
+
			if (fprintf(f, "%s%c", pkg_dep_get(dep, PKG_DEP_ORIGIN),
+
					(dep->hh.hh_next == NULL) ?
+
							'\n' : ',') < 0) {
+
				return (EPKG_FATAL);
+
			}
		}
	}

-
	if (fprintf(f, "provides: ") < 0)
-
			return (EPKG_FATAL);
-
	HASH_ITER(hh, pkg->provides, prov, ptmp) {
-
		if (fprintf(f, "%s%c", pkg_provide_name(prov),
-
				(prov->hh.hh_next == NULL) ?
-
				'\n' : ',') < 0) {
+
	if (HASH_COUNT(pkg->provides) > 0) {
+
		if (fprintf(f, "provides: ") < 0)
			return (EPKG_FATAL);
+
		HASH_ITER(hh, pkg->provides, prov, ptmp) {
+
			if (fprintf(f, "%s%c", pkg_provide_name(prov),
+
					(prov->hh.hh_next == NULL) ?
+
							'\n' : ',') < 0) {
+
				return (EPKG_FATAL);
+
			}
		}
	}

-
	if (fprintf(f, "conflicts: ") < 0)
-
		return (EPKG_FATAL);
-
	HASH_ITER(hh, pkg->conflicts, conflict, ctmp) {
-
		if (fprintf(f, "%s%c", pkg_conflict_origin(conflict),
-
				(conflict->hh.hh_next == NULL) ?
-
				'\n' : ',') < 0) {
+
	if (HASH_COUNT(pkg->conflicts) > 0) {
+
		if (fprintf(f, "conflicts: ") < 0)
			return (EPKG_FATAL);
+
		HASH_ITER(hh, pkg->conflicts, conflict, ctmp) {
+
			if (fprintf(f, "%s%c", pkg_conflict_origin(conflict),
+
					(conflict->hh.hh_next == NULL) ?
+
							'\n' : ',') < 0) {
+
				return (EPKG_FATAL);
+
			}
		}
	}

modified libpkg/pkgdb.c
@@ -2292,9 +2292,8 @@ static sql_prstmt sql_prepared_statements[PRSTMT_LAST] = {
	},
	[CONFLICT] = {
		NULL,
-
		"INSERT INTO pkg_conflicts(package_id, "
-
		"(SELECT id FROM packages WHERE origin = ?2)) "
-
		"VALUES (?1, ?2)",
+
		"INSERT INTO pkg_conflicts(package_id, conflict_id) "
+
		"VALUES (?1, (SELECT id FROM packages WHERE origin = ?2))",
		"IT",
	},
	[PKG_PROVIDE] = {
@@ -2749,7 +2748,7 @@ pkgdb_update_shlibs_provided(struct pkg *pkg, int64_t package_id, sqlite3 *s)
int
pkgdb_update_provides(struct pkg *pkg, int64_t package_id, sqlite3 *s)
{
-
	struct pkg_provide	*provide;
+
	struct pkg_provide	*provide = NULL;

	while (pkg_provides(pkg, &provide) == EPKG_OK) {
		if (run_prstmt(PROVIDE, pkg_provide_name(provide))
modified libpkg/update.c
@@ -536,7 +536,7 @@ pkg_update_incremental(const char *name, struct pkg_repo *repo, time_t *mtime)
	if (fmanifest == NULL)
		goto cleanup;
	local_t = *mtime;
-
	fmanifest = repo_fetch_remote_extract_tmp(repo,
+
	fconflicts = repo_fetch_remote_extract_tmp(repo,
			repo_conflicts_archive, "txz", &local_t,
			&rc, repo_conflicts_file);
	*mtime = local_t;