diff --git a/libpkg/pkg_jobs_conflicts.c b/libpkg/pkg_jobs_conflicts.c index 8623741..5fbb14c 100644 --- a/libpkg/pkg_jobs_conflicts.c +++ b/libpkg/pkg_jobs_conflicts.c @@ -518,6 +518,7 @@ pkg_conflicts_append_chain(struct pkg_job_universe_item *it, } pkg_conflicts_check_chain_conflict(cur, lp, j); + break; } cur = cur->prev; diff --git a/libpkg/pkg_jobs_universe.c b/libpkg/pkg_jobs_universe.c index 81dee82..fd6ae42 100644 --- a/libpkg/pkg_jobs_universe.c +++ b/libpkg/pkg_jobs_universe.c @@ -155,7 +155,7 @@ pkg_jobs_universe_add_pkg(struct pkg_jobs_universe *universe, struct pkg *pkg, bool force, struct pkg_job_universe_item **found) { struct pkg_job_universe_item *item, *tmp = NULL; - struct pkg_job_seen *seen; + /*struct pkg_job_seen *seen;*/ pkg_validate(pkg); if (pkg->digest == NULL) { @@ -167,13 +167,13 @@ pkg_jobs_universe_add_pkg(struct pkg_jobs_universe *universe, struct pkg *pkg, } } - HASH_FIND_STR(universe->seen, pkg->digest, seen); +/* HASH_FIND_STR(universe->seen, pkg->digest, seen); if (seen != NULL && !force) { if (found != NULL) *found = seen->un; return (EPKG_END); - } + }*/ pkg_debug(2, "universe: add new %s pkg: %s, (%s-%s:%s)", (pkg->type == PKG_INSTALLED ? "local" : "remote"), pkg->uid, @@ -194,7 +194,7 @@ pkg_jobs_universe_add_pkg(struct pkg_jobs_universe *universe, struct pkg *pkg, DL_APPEND(tmp, item); - if (seen == NULL) { + /*if (seen == NULL) { seen = calloc(1, sizeof(struct pkg_job_seen)); if (seen == NULL) { pkg_emit_errno("pkg_jobs_universe_add_pkg", "calloc: struct pkg_job_seen)"); @@ -204,7 +204,7 @@ pkg_jobs_universe_add_pkg(struct pkg_jobs_universe *universe, struct pkg *pkg, seen->un = item; HASH_ADD_KEYPTR(hh, universe->seen, seen->digest, strlen(seen->digest), seen); - } + }*/ universe->nitems++; diff --git a/libpkg/pkg_solve.c b/libpkg/pkg_solve.c index 0e7a387..6736746 100644 --- a/libpkg/pkg_solve.c +++ b/libpkg/pkg_solve.c @@ -979,9 +979,11 @@ pkg_solve_insert_res_job (struct pkg_solve_variable *var, DL_APPEND(j->jobs, res); pkg_debug(3, "pkg_solve: schedule installation of %s %s", add_var->uid, add_var->digest); + j->count++; } - else { + else if (strcmp(del_var->digest,add_var->digest) != 0) { /* Upgrade */ + j->count++; res->items[0] = add_var->unit; res->items[1] = del_var->unit; res->type = PKG_SOLVED_UPGRADE; @@ -989,7 +991,6 @@ pkg_solve_insert_res_job (struct pkg_solve_variable *var, pkg_debug(3, "pkg_solve: schedule upgrade of %s from %s to %s", del_var->uid, del_var->digest, add_var->digest); } - j->count ++; } /* @@ -1012,7 +1013,7 @@ pkg_solve_insert_res_job (struct pkg_solve_variable *var, DL_APPEND(j->jobs, res); pkg_debug(3, "pkg_solve: schedule deletion of %s %s", cur_var->uid, cur_var->digest); - j->count ++; + j->count++; } } } diff --git a/libpkg/repo/binary/query.c b/libpkg/repo/binary/query.c index f98d6a0..bf8ec9f 100644 --- a/libpkg/repo/binary/query.c +++ b/libpkg/repo/binary/query.c @@ -374,6 +374,7 @@ pkg_repo_binary_ensure_loaded(struct pkg_repo *repo, pkg_manifest_keys_new(&keys); pkg_repo_cached_name(pkg, path, sizeof(path)); + pkg_debug(1, "Binary> loading %s", path); if (pkg_open(&cached, path, keys, PKG_OPEN_TRY) != EPKG_OK) return (EPKG_FATAL);