diff options
author | Andrew Gregory <andrew.gregory.8@gmail.com> | 2015-02-08 08:27:42 +0100 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2015-02-12 04:22:40 +0100 |
commit | 0c9f4329f8dd2a6eb6d7717998e71c3a17fd2583 (patch) | |
tree | 7c8c8bd531c4d48c897a0d6279c80615754300fc | |
parent | 43413894d4284c1afdaac48f7f250885e0ff6acf (diff) | |
download | pacman-0c9f4329f8dd2a6eb6d7717998e71c3a17fd2583.tar.gz pacman-0c9f4329f8dd2a6eb6d7717998e71c3a17fd2583.tar.xz |
set package origin when adding to db cache
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | lib/libalpm/db.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c index 466c96f1..26e351fd 100644 --- a/lib/libalpm/db.c +++ b/lib/libalpm/db.c @@ -574,6 +574,13 @@ int _alpm_db_add_pkgincache(alpm_db_t *db, alpm_pkg_t *pkg) _alpm_log(db->handle, ALPM_LOG_DEBUG, "adding entry '%s' in '%s' cache\n", newpkg->name, db->treename); + if(newpkg->origin == ALPM_PKG_FROM_FILE) { + free(newpkg->origin_data.file); + } + newpkg->origin = (db->status & DB_STATUS_LOCAL) + ? ALPM_PKG_FROM_LOCALDB + : ALPM_PKG_FROM_SYNCDB; + newpkg->origin_data.db = db; db->pkgcache = _alpm_pkghash_add_sorted(db->pkgcache, newpkg); free_groupcache(db); |