diff options
Diffstat (limited to 'src/app_upgrade.c')
-rw-r--r-- | src/app_upgrade.c | 7 |
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; } |