Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=91f790e111cb6685ea2d4f21c0148f857a3387d5
commit 91f790e111cb6685ea2d4f21c0148f857a3387d5 Author: Michel Hermier <[email protected]> Date: Thu May 23 09:20:24 2013 +0200 libpacman: MOre f_foreach changes. diff --git a/lib/libpacman/db.c b/lib/libpacman/db.c index e864060..c18c5a4 100644 --- a/lib/libpacman/db.c +++ b/lib/libpacman/db.c @@ -112,7 +112,7 @@ pmlist_t *_pacman_db_search(pmdb_t *db, pmlist_t *needles) { pmlist_t *i, *j, *ret = NULL; - for(i = needles; i; i = i->next) { + f_foreach (i, needles) { /* FIXME: precompile regex once per loop, and handle bad regexp more gracefully */ const char *targ; @@ -151,7 +151,8 @@ pmdb_t *_pacman_db_register(const char *treename, pacman_cb_db_register callback } } else { pmlist_t *i; - for(i = handle->dbs_sync; i; i = i->next) { + + f_foreach (i, handle->dbs_sync) { pmdb_t *sdb = i->data; if(strcmp(treename, sdb->treename) == 0) { _pacman_log(PM_LOG_DEBUG, _("attempt to re-register the '%s' database, using existing\n"), sdb->treename); diff --git a/lib/libpacman/deps.c b/lib/libpacman/deps.c index 77f0a09..f2e2855 100644 --- a/lib/libpacman/deps.c +++ b/lib/libpacman/deps.c @@ -230,7 +230,7 @@ int _pacman_depmiss_isin(pmdepmissing_t *needle, pmlist_t *haystack) { pmlist_t *i; - for(i = haystack; i; i = i->next) { + f_foreach (i, haystack) { pmdepmissing_t *miss = i->data; if(!memcmp(needle, miss, sizeof(pmdepmissing_t)) && !memcmp(&needle->depend, &miss->depend, sizeof(pmdepend_t))) { @@ -286,18 +286,18 @@ void _pacman_sortbydeps(pmtrans_t *trans, int mode) _pacman_log(PM_LOG_DEBUG, _("started sorting dependencies")); /* We create the vertices */ - for (i = trans->_packages; i; i = i->next) { + f_foreach (i, trans->_packages) { pmgraph_t *v = _pacman_graph_new(); v->data = (void *)i->data; vertices = _pacman_list_add(vertices, v); } /* We compute the edges */ - for(i = vertices; i; i = i->next) { + f_foreach (i, vertices) { pmgraph_t *vertex_i = i->data; pmpkg_t *p_i = vertex_i->data; /* TODO this should be somehow combined with _pacman_trans_checkdeps */ - for(j = vertices; j; j = j->next) { + f_foreach (j, vertices) { pmgraph_t *vertex_j = j->data; pmpkg_t *p_j = vertex_j->data; int child = 0; @@ -432,7 +432,7 @@ int _pacman_transpkg_checkdeps(pmtrans_t *trans, pmtranspkg_t *transpkg, pmlist_ int _pacman_trans_checkdeps (pmtrans_t *trans, pmlist_t **depmisslist) { pmlist_t *i; - for (i = trans->packages; i != NULL; i = i->next) { + f_foreach (i, trans->packages) { pmtranspkg_t *transpkg = i->data; if (_pacman_transpkg_checkdeps (trans, transpkg, depmisslist) != 0) { diff --git a/lib/libpacman/handle.c b/lib/libpacman/handle.c index 6aa9a74..b9393d4 100644 --- a/lib/libpacman/handle.c +++ b/lib/libpacman/handle.c @@ -406,8 +406,9 @@ int _pacman_handle_get_option(pmhandle_t *ph, unsigned char val, long *data) pmdb_t *_pacman_handle_get_db_sync(pmhandle_t *handle, const char *name) { pmlist_t *i; - for (i = handle->dbs_sync; i; i = i->next) { + f_foreach (i, handle->dbs_sync) { pmdb_t *db = i->data; + if (strcmp(db->treename, name) == 0) { return db; } diff --git a/lib/libpacman/sync.c b/lib/libpacman/sync.c index b13117a..49a69db 100644 --- a/lib/libpacman/sync.c +++ b/lib/libpacman/sync.c @@ -84,9 +84,10 @@ int _pacman_sync_commit(pmtrans_t *trans, pmlist_t **data) goto error; } - for(i = trans->packages; i; i = i->next) { + f_foreach (i, trans->packages) { pmsyncpkg_t *ps = i->data; - for(j = ps->replaces; j; j = j->next) { + + f_foreach (j, ps->replaces) { pmpkg_t *pkg = j->data; if(__pacman_trans_get_trans_pkg(tr, pkg->name) == NULL) { if(_pacman_trans_addtarget(tr, pkg->name, PM_TRANS_TYPE_REMOVE, 0) == -1) { @@ -122,7 +123,7 @@ int _pacman_sync_commit(pmtrans_t *trans, pmlist_t **data) _pacman_log(PM_LOG_ERROR, _("could not initialize transaction")); goto error; } - for(i = trans->packages; i; i = i->next) { + f_foreach (i, trans->packages) { pmsyncpkg_t *ps = i->data; pmpkg_t *spkg = ps->pkg_new; char str[PATH_MAX]; @@ -145,15 +146,15 @@ int _pacman_sync_commit(pmtrans_t *trans, pmlist_t **data) /* propagate replaced packages' requiredby fields to their new owners */ if(replaces) { _pacman_log(PM_LOG_FLOW1, _("updating database for replaced packages' dependencies")); - for(i = trans->packages; i; i = i->next) { + f_foreach (i, trans->packages) { pmsyncpkg_t *ps = i->data; if (ps->replaces != NULL) { pmpkg_t *new = _pacman_db_get_pkgfromcache(db_local, ps->pkg_new->name); - for(j = ps->replaces; j; j = j->next) { + f_foreach (j, ps->replaces) { pmlist_t *k; pmpkg_t *old = j->data; /* merge lists */ - for(k = old->requiredby; k; k = k->next) { + f_foreach (k, old->requiredby) { if(!f_stringlist_find (new->requiredby, k->data)) { /* replace old's name with new's name in the requiredby's dependency list */ pmlist_t *m; @@ -165,7 +166,7 @@ int _pacman_sync_commit(pmtrans_t *trans, pmlist_t **data) * here. */ continue; } - for(m = depender->depends; m; m = m->next) { + f_foreach (m, depender->depends) { if(!strcmp(m->data, old->name)) { FREE(m->data); m->data = strdup(new->name); @@ -210,7 +211,7 @@ int _pacman_trans_check_integrity (pmtrans_t *trans, pmlist_t **data) { EVENT(trans, PM_TRANS_EVT_INTEGRITY_START, NULL, NULL); - for(i = trans->packages; i; i = i->next) { + f_foreach (i, trans->packages) { pmsyncpkg_t *ps = i->data; pmpkg_t *spkg = ps->pkg_new; char str[PATH_MAX], pkgname[PATH_MAX]; @@ -295,11 +296,11 @@ int _pacman_trans_download_commit(pmtrans_t *trans, pmlist_t **data) retval = 0; FREELIST(*data); int done = 1; - for(i = handle->dbs_sync; i; i = i->next) { + f_foreach (i, handle->dbs_sync) { struct stat buf; pmdb_t *current = i->data; - for(j = trans->packages; j; j = j->next) { + f_foreach (j, trans->packages) { pmsyncpkg_t *ps = j->data; pmpkg_t *spkg = ps->pkg_new; pmdb_t *dbs = spkg->db; @@ -383,7 +384,7 @@ int _pacman_trans_download_commit(pmtrans_t *trans, pmlist_t **data) if(!varcache && !(trans->flags & PM_TRANS_FLAG_DOWNLOADONLY)) { /* delete packages */ - for(i = files; i; i = i->next) { + f_foreach (i, files) { unlink(i->data); } } _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
