From c8be7540a50583194e971918099006a1736cfab7 Mon Sep 17 00:00:00 2001 From: Chantry Xavier Date: Sat, 17 Nov 2007 13:06:44 +0100 Subject: Remove provide.c and provide.h . This file only contained one private function : _alpm_db_whatprovides . And the public alpm_db_whatprovides was in db.c , so I moved everything there. Signed-off-by: Chantry Xavier [Dan: updated POTFILES.in as well] Signed-off-by: Dan McGee --- lib/libalpm/db.c | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'lib/libalpm/db.c') diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c index f7621338..1e2e6b24 100644 --- a/lib/libalpm/db.c +++ b/lib/libalpm/db.c @@ -43,7 +43,6 @@ #include "util.h" #include "error.h" #include "server.h" -#include "provide.h" #include "handle.h" #include "cache.h" #include "alpm.h" @@ -780,4 +779,28 @@ pmdb_t *_alpm_db_register_sync(const char *treename) return(db); } +/* return a alpm_list_t of packages in "db" that provide "package" + */ +alpm_list_t *_alpm_db_whatprovides(pmdb_t *db, const char *package) +{ + alpm_list_t *pkgs = NULL; + alpm_list_t *lp; + + ALPM_LOG_FUNC; + + if(db == NULL || package == NULL || strlen(package) == 0) { + return(NULL); + } + + for(lp = _alpm_db_get_pkgcache(db); lp; lp = lp->next) { + pmpkg_t *info = lp->data; + + if(alpm_list_find_str(alpm_pkg_get_provides(info), package)) { + pkgs = alpm_list_add(pkgs, info); + } + } + + return(pkgs); +} + /* vim: set ts=2 sw=2 noet: */ -- cgit v1.2.3-24-g4f1b