summaryrefslogtreecommitdiffstats
path: root/lib/libalpm/be_files.c
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2008-05-11 19:00:18 +0200
committerAllan McRae <allan@archlinux.org>2010-10-13 15:53:18 +0200
commitd1126db1281596ba8ea960bfa963e86731d28b5e (patch)
tree4201eb0da47075c27b65e38eea4f4046a25861f4 /lib/libalpm/be_files.c
parent49176461a6b476e673e232075c95f07963750f74 (diff)
downloadpacman-d1126db1281596ba8ea960bfa963e86731d28b5e.tar.gz
pacman-d1126db1281596ba8ea960bfa963e86731d28b5e.tar.xz
Allow local and sync db to be treated separately
Implement this seemingly simple change in package.h: typedef enum _pmpkgfrom_t { - PKG_FROM_CACHE = 1, - PKG_FROM_FILE + PKG_FROM_FILE = 1, + PKG_FROM_LOCALDB, + PKG_FROM_SYNCDB } pmpkgfrom_t; which requires flushing out several assumptions from around the codebase with regards to usage of the PKG_FROM_CACHE value. Make some changes where required to allow the switch, and now the correct value should be set (via a crude hack) depending on whether a package was loaded as an entry in a local db or a sync db. This patch underwent some big rebasing from Allan and Dan. Signed-off-by: Dan McGee <dan@archlinux.org> Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'lib/libalpm/be_files.c')
-rw-r--r--lib/libalpm/be_files.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/libalpm/be_files.c b/lib/libalpm/be_files.c
index 0f055e03..c0298049 100644
--- a/lib/libalpm/be_files.c
+++ b/lib/libalpm/be_files.c
@@ -415,7 +415,11 @@ int _alpm_db_populate(pmdb_t *db)
_alpm_pkg_free(pkg);
continue;
}
- pkg->origin = PKG_FROM_CACHE;
+ if(db == handle->db_local) {
+ pkg->origin = PKG_FROM_LOCALDB;
+ } else {
+ pkg->origin = PKG_FROM_SYNCDB;
+ }
pkg->origin_data.db = db;
/* add to the collection */
_alpm_log(PM_LOG_FUNCTION, "adding '%s' to package cache for db '%s'\n",