diff options
Diffstat (limited to 'src/backend/commands')
-rw-r--r-- | src/backend/commands/comment.c | 10 | ||||
-rw-r--r-- | src/backend/commands/explain.c | 29 |
2 files changed, 15 insertions, 24 deletions
diff --git a/src/backend/commands/comment.c b/src/backend/commands/comment.c index 4ed3614506d..df09337d720 100644 --- a/src/backend/commands/comment.c +++ b/src/backend/commands/comment.c @@ -7,7 +7,7 @@ * Copyright (c) 1996-2003, PostgreSQL Global Development Group * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/comment.c,v 1.69 2003/08/04 23:59:37 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/comment.c,v 1.70 2003/08/11 20:46:46 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -365,7 +365,7 @@ CommentAttribute(List *qualname, char *comment) if (nnames < 2) /* parser messed up */ elog(ERROR, "must specify relation and attribute"); relname = ltruncate(nnames - 1, listCopy(qualname)); - attrname = strVal(nth(nnames - 1, qualname)); + attrname = strVal(llast(qualname)); /* Open the containing relation to ensure it won't go away meanwhile */ rel = makeRangeVarFromNameList(relname); @@ -583,7 +583,7 @@ CommentRule(List *qualname, char *comment) /* New-style: rule and relname both provided */ Assert(nnames >= 2); relname = ltruncate(nnames - 1, listCopy(qualname)); - rulename = strVal(nth(nnames - 1, qualname)); + rulename = strVal(llast(qualname)); /* Open the owning relation to ensure it won't go away meanwhile */ rel = makeRangeVarFromNameList(relname); @@ -778,7 +778,7 @@ CommentTrigger(List *qualname, char *comment) if (nnames < 2) /* parser messed up */ elog(ERROR, "must specify relation and trigger"); relname = ltruncate(nnames - 1, listCopy(qualname)); - trigname = strVal(nth(nnames - 1, qualname)); + trigname = strVal(llast(qualname)); /* Open the owning relation to ensure it won't go away meanwhile */ rel = makeRangeVarFromNameList(relname); @@ -856,7 +856,7 @@ CommentConstraint(List *qualname, char *comment) if (nnames < 2) /* parser messed up */ elog(ERROR, "must specify relation and constraint"); relName = ltruncate(nnames - 1, listCopy(qualname)); - conName = strVal(nth(nnames - 1, qualname)); + conName = strVal(llast(qualname)); /* Open the owning relation to ensure it won't go away meanwhile */ rel = makeRangeVarFromNameList(relName); diff --git a/src/backend/commands/explain.c b/src/backend/commands/explain.c index 6e2b8572713..e664b3e4942 100644 --- a/src/backend/commands/explain.c +++ b/src/backend/commands/explain.c @@ -7,7 +7,7 @@ * Portions Copyright (c) 1994-5, Regents of the University of California * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.114 2003/08/08 21:41:30 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.115 2003/08/11 20:46:46 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -947,7 +947,6 @@ show_sort_keys(List *tlist, int nkeys, AttrNumber *keycols, List *context; bool useprefix; int keyno; - List *tl; char *exprstr; Relids varnos; int i; @@ -993,25 +992,17 @@ show_sort_keys(List *tlist, int nkeys, AttrNumber *keycols, { /* find key expression in tlist */ AttrNumber keyresno = keycols[keyno]; + TargetEntry *target = get_tle_by_resno(tlist, keyresno); - foreach(tl, tlist) - { - TargetEntry *target = (TargetEntry *) lfirst(tl); - - if (target->resdom->resno == keyresno) - { - /* Deparse the expression, showing any top-level cast */ - exprstr = deparse_expression((Node *) target->expr, context, - useprefix, true); - /* And add to str */ - if (keyno > 0) - appendStringInfo(str, ", "); - appendStringInfo(str, "%s", exprstr); - break; - } - } - if (tl == NIL) + if (!target) elog(ERROR, "no tlist entry for key %d", keyresno); + /* Deparse the expression, showing any top-level cast */ + exprstr = deparse_expression((Node *) target->expr, context, + useprefix, true); + /* And add to str */ + if (keyno > 0) + appendStringInfo(str, ", "); + appendStringInfo(str, "%s", exprstr); } appendStringInfo(str, "\n"); |