diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/pacman/sync.c | 1 | ||||
-rw-r--r-- | src/pacman/util.c | 22 | ||||
-rw-r--r-- | src/pacman/util.h | 1 |
3 files changed, 15 insertions, 9 deletions
diff --git a/src/pacman/sync.c b/src/pacman/sync.c index e97da37a..d553ba01 100644 --- a/src/pacman/sync.c +++ b/src/pacman/sync.c @@ -304,6 +304,7 @@ static int sync_synctree(int level, alpm_list_t *syncs) */ if(!success) { pm_fprintf(stderr, ALPM_LOG_ERROR, _("failed to synchronize any databases\n")); + trans_init_error(); } return (success > 0); } diff --git a/src/pacman/util.c b/src/pacman/util.c index 47fbaeb5..599c18c4 100644 --- a/src/pacman/util.c +++ b/src/pacman/util.c @@ -63,20 +63,24 @@ int trans_init(alpm_transflag_t flags, int check_valid) } if(ret == -1) { - enum _alpm_errno_t err = alpm_errno(config->handle); - pm_fprintf(stderr, ALPM_LOG_ERROR, _("failed to init transaction (%s)\n"), - alpm_strerror(err)); - if(err == ALPM_ERR_HANDLE_LOCK) { - fprintf(stderr, _(" if you're sure a package manager is not already\n" - " running, you can remove %s\n"), - alpm_option_get_lockfile(config->handle)); - } - + trans_init_error(); return -1; } return 0; } +void trans_init_error(void) +{ + enum _alpm_errno_t err = alpm_errno(config->handle); + pm_fprintf(stderr, ALPM_LOG_ERROR, _("failed to init transaction (%s)\n"), + alpm_strerror(err)); + if(err == ALPM_ERR_HANDLE_LOCK) { + fprintf(stderr, _(" if you're sure a package manager is not already\n" + " running, you can remove %s\n"), + alpm_option_get_lockfile(config->handle)); + } +} + int trans_release(void) { if(alpm_trans_release(config->handle) == -1) { diff --git a/src/pacman/util.h b/src/pacman/util.h index 66698474..6a26b086 100644 --- a/src/pacman/util.h +++ b/src/pacman/util.h @@ -39,6 +39,7 @@ /* update speed for the fill_progress based functions */ #define UPDATE_SPEED_SEC 0.2f +void trans_init_error(void); int trans_init(alpm_transflag_t flags, int check_valid); int trans_release(void); int needs_root(void); |