summaryrefslogtreecommitdiff
path: root/src/app_upgrade.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/app_upgrade.c')
-rw-r--r--src/app_upgrade.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/app_upgrade.c b/src/app_upgrade.c
index bc6ccb1..c618cb6 100644
--- a/src/app_upgrade.c
+++ b/src/app_upgrade.c
@@ -136,17 +136,18 @@ ret:
return r;
}
-static void set_upgrade_for_name(struct apk_database *db, const char *match, struct apk_name *name, void *pctx)
+static int set_upgrade_for_name(struct apk_database *db, const char *match, struct apk_name *name, void *pctx)
{
struct upgrade_ctx *uctx = (struct upgrade_ctx *) pctx;
if (!name) {
apk_error("Package '%s' not found", match);
uctx->errors++;
- return;
+ return 0;
}
apk_solver_set_name_flags(name, uctx->ignore ? APK_SOLVERF_INSTALLED : APK_SOLVERF_UPGRADE, 0);
+ return 0;
}
static int upgrade_main(void *ctx, struct apk_database *db, struct apk_string_array *args)
@@ -206,7 +207,7 @@ static int upgrade_main(void *ctx, struct apk_database *db, struct apk_string_ar
if (args->num > 0) {
/* if specific packages are listed, we don't want to upgrade world. */
if (!uctx->ignore) solver_flags &= ~APK_SOLVERF_UPGRADE;
- apk_name_foreach_matching(db, args, apk_foreach_genid(), set_upgrade_for_name, uctx);
+ apk_db_foreach_matching_name(db, args, set_upgrade_for_name, uctx);
if (uctx->errors) return uctx->errors;
}