Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=4bbf3af52ea8bbae02aafd2c4eee5364c6c22e26
commit 4bbf3af52ea8bbae02aafd2c4eee5364c6c22e26 Author: Michel Hermier <[email protected]> Date: Thu Nov 7 13:22:11 2013 +0100 libpacman: Wrap fpm detection and loading off _pacman_add_addtarget in _pacman_filedb_load. diff --git a/lib/libpacman/add.c b/lib/libpacman/add.c index 3b1be8b..7868b48 100644 --- a/lib/libpacman/add.c +++ b/lib/libpacman/add.c @@ -62,13 +62,25 @@ #include "handle.h" #include "packages_transaction.h" +pmpkg_t *_pacman_filedb_load(pmdb_t *db, const char *name) +{ + struct stat buf; + + if(stat(name, &buf)) { + pm_errno = PM_ERR_NOT_A_FILE; + return NULL; + } + + _pacman_log(PM_LOG_FLOW2, _("loading target '%s'"), name); + return _pacman_pkg_load(name); +} + int _pacman_add_addtarget(pmtrans_t *trans, const char *name) { pmpkg_t *info = NULL; pmpkg_t *dummy; pmlist_t *i; pmpkg_t *local; - struct stat buf; pmdb_t *db_local = trans->handle->db_local; ASSERT(trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1)); @@ -80,15 +92,9 @@ int _pacman_add_addtarget(pmtrans_t *trans, const char *name) return(_pacman_fakedb_addtarget(trans, name)); } - if(stat(name, &buf)) { - pm_errno = PM_ERR_NOT_A_FILE; - goto error; - } - - _pacman_log(PM_LOG_FLOW2, _("loading target '%s'"), name); - info = _pacman_pkg_load(name); + info = _pacman_filedb_load(NULL, name); if(info == NULL) { - /* pm_errno is already set by pkg_load() */ + /* pm_errno is already set by _pacman_filedb_load() */ goto error; } _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
