[pacman-dev] [PATCH 04/13] Require handle for alpm_db_register_sync()
Dan McGee
dan at archlinux.org
Tue Jun 7 17:36:33 EDT 2011
Signed-off-by: Dan McGee <dan at archlinux.org>
---
lib/libalpm/alpm.h | 4 +++-
lib/libalpm/db.c | 5 +----
src/pacman/conf.c | 2 +-
src/util/cleanupdelta.c | 2 +-
src/util/testdb.c | 2 +-
5 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/lib/libalpm/alpm.h b/lib/libalpm/alpm.h
index d63b987..50ab06e 100644
--- a/lib/libalpm/alpm.h
+++ b/lib/libalpm/alpm.h
@@ -268,15 +268,17 @@ pmdb_t *alpm_option_get_localdb(pmhandle_t *handle);
/** Get the list of sync databases.
* Returns a list of pmdb_t structures, one for each registered
* sync database.
+ * @param handle the context handle
* @return a reference to an internal list of pmdb_t structures
*/
alpm_list_t *alpm_option_get_syncdbs(pmhandle_t *handle);
/** Register a sync database of packages.
+ * @param handle the context handle
* @param treename the name of the sync repository
* @return a pmdb_t* on success (the value), NULL on error
*/
-pmdb_t *alpm_db_register_sync(const char *treename);
+pmdb_t *alpm_db_register_sync(pmhandle_t *handle, const char *treename);
/** Unregister a package database.
* @param db pointer to the package database to unregister
diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c
index 6114334..8156f2a 100644
--- a/lib/libalpm/db.c
+++ b/lib/libalpm/db.c
@@ -39,16 +39,13 @@
#include "package.h"
#include "group.h"
-/* global handle variable */
-extern pmhandle_t *handle;
-
/** \addtogroup alpm_databases Database Functions
* @brief Functions to query and manipulate the database of libalpm
* @{
*/
/** Register a sync database of packages. */
-pmdb_t SYMEXPORT *alpm_db_register_sync(const char *treename)
+pmdb_t SYMEXPORT *alpm_db_register_sync(pmhandle_t *handle, const char *treename)
{
/* Sanity checks */
ASSERT(handle != NULL, RET_ERR(PM_ERR_HANDLE_NULL, NULL));
diff --git a/src/pacman/conf.c b/src/pacman/conf.c
index a9ff14c..6686f73 100644
--- a/src/pacman/conf.c
+++ b/src/pacman/conf.c
@@ -564,7 +564,7 @@ static int _parseconfig(const char *file, int parse_options,
pm_printf(PM_LOG_DEBUG, "config: new section '%s'\n", name);
/* if we are not looking at the options section, register a db */
if(!parse_options && strcmp(name, "options") != 0) {
- db = alpm_db_register_sync(name);
+ db = alpm_db_register_sync(config->handle, name);
if(db == NULL) {
pm_printf(PM_LOG_ERROR, _("could not register '%s' database (%s)\n"),
name, alpm_strerrorlast());
diff --git a/src/util/cleanupdelta.c b/src/util/cleanupdelta.c
index 83659cd..5112b1a 100644
--- a/src/util/cleanupdelta.c
+++ b/src/util/cleanupdelta.c
@@ -75,7 +75,7 @@ static void checkdbs(const char *dbpath, alpm_list_t *dbnames) {
for(i = dbnames; i; i = alpm_list_next(i)) {
char *dbname = alpm_list_getdata(i);
snprintf(syncdbpath, PATH_MAX, "%s/sync/%s", dbpath, dbname);
- db = alpm_db_register_sync(dbname);
+ db = alpm_db_register_sync(handle, dbname);
if(db == NULL) {
fprintf(stderr, "error: could not register sync database (%s)\n",
alpm_strerrorlast());
diff --git a/src/util/testdb.c b/src/util/testdb.c
index c7640d9..620328e 100644
--- a/src/util/testdb.c
+++ b/src/util/testdb.c
@@ -152,7 +152,7 @@ static int check_syncdbs(alpm_list_t *dbnames) {
for(i = dbnames; i; i = alpm_list_next(i)) {
char *dbname = alpm_list_getdata(i);
- db = alpm_db_register_sync(dbname);
+ db = alpm_db_register_sync(handle, dbname);
if(db == NULL) {
fprintf(stderr, "error: could not register sync database (%s)\n",
alpm_strerrorlast());
--
1.7.5.2
More information about the pacman-dev
mailing list