Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=2c38962449759d503ccbe48aebc5524bcfd9f449
commit 2c38962449759d503ccbe48aebc5524bcfd9f449 Author: Michel Hermier <[email protected]> Date: Sun Jun 8 10:59:45 2014 +0200 libpacman: Add Database::m_handle. diff --git a/lib/libpacman/db.cpp b/lib/libpacman/db.cpp index 7140a64..ad1b8c5 100644 --- a/lib/libpacman/db.cpp +++ b/lib/libpacman/db.cpp @@ -63,11 +63,12 @@ FILE *_pacman_db_fopen_lastupdate(const Database *db, const char *mode) { char path[PATH_MAX]; - snprintf(path, sizeof(path), "%s%s/%s.lastupdate", handle->root, handle->dbpath, db->treename); + snprintf(path, sizeof(path), "%s%s/%s.lastupdate", db->m_handle->root, db->m_handle->dbpath, db->treename); return fopen(path, mode); } -Database::Database(libpacman::Handle *handle, const char *treename) +Database::Database(Handle *handle, const char *treename) + : m_handle(handle) { path = f_zalloc(strlen(handle->root)+strlen(handle->dbpath)+strlen(treename)+2); // if(path == NULL) { diff --git a/lib/libpacman/db.h b/lib/libpacman/db.h index c7bf203..a4292ea 100644 --- a/lib/libpacman/db.h +++ b/lib/libpacman/db.h @@ -67,6 +67,7 @@ public: virtual pmlist_t *getowners(const char *filename); /* Make pure virtual */ + ::libpacman::Handle *m_handle; char *path; char treename[PATH_MAX]; time_t cache_timestamp; diff --git a/lib/libpacman/db/localdb.cpp b/lib/libpacman/db/localdb.cpp index 3700067..317ca20 100644 --- a/lib/libpacman/db/localdb.cpp +++ b/lib/libpacman/db/localdb.cpp @@ -464,7 +464,7 @@ pmlist_t *LocalDatabase::getowners(const char *filename) for(i = info->files(); i; i = i->next) { char path[PATH_MAX]; - snprintf(path, PATH_MAX, "%s%s", ::handle->root, (char *)i->data); + snprintf(path, PATH_MAX, "%s%s", m_handle->root, (char *)i->data); if(!strcmp(path, rpath)) { ret = _pacman_list_add(ret, info); if(rpath[strlen(rpath)-1] != '/') { diff --git a/lib/libpacman/db/syncdb.cpp b/lib/libpacman/db/syncdb.cpp index 3b6b481..53ff75f 100644 --- a/lib/libpacman/db/syncdb.cpp +++ b/lib/libpacman/db/syncdb.cpp @@ -168,7 +168,7 @@ int _pacman_syncdb_update(Database *db, int force) snprintf(path, PATH_MAX, "%s" PM_EXT_DB, db->treename); files = _pacman_stringlist_append(files, path); - snprintf(path, PATH_MAX, "%s%s", handle->root, handle->dbpath); + snprintf(path, PATH_MAX, "%s%s", m_handle->root, m_handle->dbpath); ret = _pacman_downloadfiles_forreal(db->servers, path, files, ×tamp, &newmtime, 0); FREELIST(files); @@ -183,8 +183,8 @@ int _pacman_syncdb_update(Database *db, int force) _pacman_log(PM_LOG_DEBUG, _("sync: new mtime for %s: %s\n"), db->treename, newmtime); updated = 1; } - snprintf(dirpath, PATH_MAX, "%s%s/%s", handle->root, handle->dbpath, db->treename); - snprintf(path, PATH_MAX, "%s%s/%s" PM_EXT_DB, handle->root, handle->dbpath, db->treename); + snprintf(dirpath, PATH_MAX, "%s%s/%s", m_handle->root, m_handle->dbpath, db->treename); + snprintf(path, PATH_MAX, "%s%s/%s" PM_EXT_DB, m_handle->root, m_handle->dbpath, db->treename); /* remove the old dir */ _pacman_rmrf(dirpath); _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
