From 64a60590ba5da8026abb65a7abe8fce9e573c476 Mon Sep 17 00:00:00 2001 From: Neil Conway Date: Mon, 27 Sep 2004 04:12:03 +0000 Subject: A few minor list-related cleanups: (1) Replace while loop with the new forboth() construct in parser/analyze.c (2) Replace lcons() with lappend() in SearchCatCacheList(). Since these now have the same performance, there is no reason to prefer lcons() in this case, and using lappend() leads to cleaner code. (3) Improve the name of the second parameter to for_each_cell() --- src/backend/utils/cache/catcache.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'src/backend/utils/cache/catcache.c') diff --git a/src/backend/utils/cache/catcache.c b/src/backend/utils/cache/catcache.c index b66007c069..0a11411e9a 100644 --- a/src/backend/utils/cache/catcache.c +++ b/src/backend/utils/cache/catcache.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/cache/catcache.c,v 1.116 2004/08/29 05:06:50 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/utils/cache/catcache.c,v 1.117 2004/09/27 04:12:02 neilc Exp $ * *------------------------------------------------------------------------- */ @@ -1501,7 +1501,7 @@ SearchCatCacheList(CatCache *cache, * worth fixing. */ ct->refcount++; - ctlist = lcons(ct, ctlist); + ctlist = lappend(ctlist, ct); nmembers++; } @@ -1522,16 +1522,17 @@ SearchCatCacheList(CatCache *cache, cl->cl_magic = CL_MAGIC; cl->my_cache = cache; - DLInitElem(&cl->cache_elem, (void *) cl); + DLInitElem(&cl->cache_elem, cl); cl->refcount = 0; /* for the moment */ cl->dead = false; cl->ordered = ordered; cl->nkeys = nkeys; cl->hash_value = lHashValue; cl->n_members = nmembers; - /* The list is backwards because we built it with lcons */ + + Assert(nmembers == list_length(ctlist)); ctlist_item = list_head(ctlist); - for (i = nmembers; --i >= 0;) + for (i = 0; i < nmembers; i++) { cl->members[i] = ct = (CatCTup *) lfirst(ctlist_item); Assert(ct->c_list == NULL); -- cgit v1.2.1