summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan McRae <allan@archlinux.org>2015-06-18 00:12:14 +1000
committerAllan McRae <allan@archlinux.org>2015-07-15 10:57:30 +1000
commite49abc9860cfe9470a5828d3bb0ad38fd57a0fad (patch)
tree03f6af9f5ab3ee095531c2037ae3f1cf81e1c52b
parentb0dac754d27b45e4346b010e674f7faa466e0025 (diff)
downloadpacman-e49abc9860cfe9470a5828d3bb0ad38fd57a0fad.tar.xz
pacman: move database syncing to util.c
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r--src/pacman/sync.c33
-rw-r--r--src/pacman/util.c31
-rw-r--r--src/pacman/util.h1
3 files changed, 33 insertions, 32 deletions
diff --git a/src/pacman/sync.c b/src/pacman/sync.c
index f28ffbd9..3c201999 100644
--- a/src/pacman/sync.c
+++ b/src/pacman/sync.c
@@ -305,37 +305,6 @@ static int sync_cleancache(int level)
return ret;
}
-static int sync_synctree(int level, alpm_list_t *syncs)
-{
- alpm_list_t *i;
- unsigned int success = 0;
-
- for(i = syncs; i; i = alpm_list_next(i)) {
- alpm_db_t *db = i->data;
-
- int ret = alpm_db_update((level < 2 ? 0 : 1), db);
- if(ret < 0) {
- pm_printf(ALPM_LOG_ERROR, _("failed to update %s (%s)\n"),
- alpm_db_get_name(db), alpm_strerror(alpm_errno(config->handle)));
- } else if(ret == 1) {
- printf(_(" %s is up to date\n"), alpm_db_get_name(db));
- success++;
- } else {
- success++;
- }
- }
-
- /* We should always succeed if at least one DB was upgraded - we may possibly
- * fail later with unresolved deps, but that should be rare, and would be
- * expected
- */
- if(!success) {
- pm_printf(ALPM_LOG_ERROR, _("failed to synchronize any databases\n"));
- trans_init_error();
- }
- return (success > 0);
-}
-
/* search the sync dbs for a matching package */
static int sync_search(alpm_list_t *syncs, alpm_list_t *targets)
{
@@ -903,7 +872,7 @@ int pacman_sync(alpm_list_t *targets)
colon_printf(_("Synchronizing package databases...\n"));
alpm_logaction(config->handle, PACMAN_CALLER_PREFIX,
"synchronizing package lists\n");
- if(!sync_synctree(config->op_s_sync, sync_dbs)) {
+ if(!sync_syncdbs(config->op_s_sync, sync_dbs)) {
return 1;
}
}
diff --git a/src/pacman/util.c b/src/pacman/util.c
index ea7faf80..46620240 100644
--- a/src/pacman/util.c
+++ b/src/pacman/util.c
@@ -143,6 +143,37 @@ int check_syncdbs(size_t need_repos, int check_valid)
return ret;
}
+int sync_syncdbs(int level, alpm_list_t *syncs)
+{
+ alpm_list_t *i;
+ unsigned int success = 0;
+
+ for(i = syncs; i; i = alpm_list_next(i)) {
+ alpm_db_t *db = i->data;
+
+ int ret = alpm_db_update((level < 2 ? 0 : 1), db);
+ if(ret < 0) {
+ pm_printf(ALPM_LOG_ERROR, _("failed to update %s (%s)\n"),
+ alpm_db_get_name(db), alpm_strerror(alpm_errno(config->handle)));
+ } else if(ret == 1) {
+ printf(_(" %s is up to date\n"), alpm_db_get_name(db));
+ success++;
+ } else {
+ success++;
+ }
+ }
+
+ /* We should always succeed if at least one DB was upgraded - we may possibly
+ * fail later with unresolved deps, but that should be rare, and would be
+ * expected
+ */
+ if(!success) {
+ pm_printf(ALPM_LOG_ERROR, _("failed to synchronize any databases\n"));
+ trans_init_error();
+ }
+ return (success > 0);
+}
+
/* discard unhandled input on the terminal's input buffer */
static int flush_term_input(int fd)
{
diff --git a/src/pacman/util.h b/src/pacman/util.h
index fda9b51a..c82d816e 100644
--- a/src/pacman/util.h
+++ b/src/pacman/util.h
@@ -49,6 +49,7 @@ int trans_init(alpm_transflag_t flags, int check_valid);
int trans_release(void);
int needs_root(void);
int check_syncdbs(size_t need_repos, int check_valid);
+int sync_syncdbs(int level, alpm_list_t *syncs);
unsigned short getcols(void);
void columns_cache_reset(void);
int rmrf(const char *path);