Fix up some misusage of appendStringInfo() and friends
authorPeter Eisentraut <peter_e@gmx.net>
Wed, 16 Aug 2017 03:34:39 +0000 (23:34 -0400)
committerPeter Eisentraut <peter_e@gmx.net>
Wed, 16 Aug 2017 03:34:39 +0000 (23:34 -0400)
Change to appendStringInfoChar() or appendStringInfoString() where those
can be used.

Author: David Rowley <david.rowley@2ndquadrant.com>
Reviewed-by: Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>
13 files changed:
contrib/postgres_fdw/deparse.c
src/backend/commands/subscriptioncmds.c
src/backend/nodes/outfuncs.c
src/backend/replication/libpqwalreceiver/libpqwalreceiver.c
src/backend/utils/adt/ruleutils.c
src/backend/utils/adt/xml.c
src/backend/utils/mmgr/freepage.c
src/bin/pg_dump/pg_dump.c
src/bin/pg_dump/pg_dumpall.c
src/bin/psql/command.c
src/bin/psql/describe.c
src/bin/scripts/createuser.c
src/interfaces/libpq/fe-connect.c

index 2af83640101b97563832b29770b4726b26a8eca1..285cf1b2eeab87588992f5372a9083218ab64aff 100644 (file)
@@ -973,7 +973,7 @@ deparseSelectStmtForRel(StringInfo buf, PlannerInfo *root, RelOptInfo *rel,
        /* Append HAVING clause */
        if (remote_conds)
        {
-           appendStringInfo(buf, " HAVING ");
+           appendStringInfoString(buf, " HAVING ");
            appendConditions(remote_conds, &context);
        }
    }
@@ -1076,7 +1076,7 @@ deparseFromExpr(List *quals, deparse_expr_cxt *context)
    /* Construct WHERE clause */
    if (quals != NIL)
    {
-       appendStringInfo(buf, " WHERE ");
+       appendStringInfoString(buf, " WHERE ");
        appendConditions(quals, context);
    }
 }
@@ -1447,15 +1447,15 @@ deparseFromExprForRel(StringInfo buf, PlannerInfo *root, RelOptInfo *foreignrel,
            context.root = root;
            context.params_list = params_list;
 
-           appendStringInfo(buf, "(");
+           appendStringInfoChar(buf, '(');
            appendConditions(fpinfo->joinclauses, &context);
-           appendStringInfo(buf, ")");
+           appendStringInfoChar(buf, ')');
        }
        else
            appendStringInfoString(buf, "(TRUE)");
 
        /* End the FROM clause entry. */
-       appendStringInfo(buf, ")");
+       appendStringInfoChar(buf, ')');
    }
    else
    {
@@ -1702,7 +1702,7 @@ deparseDirectUpdateSql(StringInfo buf, PlannerInfo *root,
 
    if (remote_conds)
    {
-       appendStringInfo(buf, " WHERE ");
+       appendStringInfoString(buf, " WHERE ");
        appendConditions(remote_conds, &context);
    }
 
@@ -1762,7 +1762,7 @@ deparseDirectDeleteSql(StringInfo buf, PlannerInfo *root,
 
    if (remote_conds)
    {
-       appendStringInfo(buf, " WHERE ");
+       appendStringInfoString(buf, " WHERE ");
        appendConditions(remote_conds, &context);
    }
 
@@ -1978,17 +1978,17 @@ deparseColumnRef(StringInfo buf, int varno, int varattno, PlannerInfo *root,
        {
            appendStringInfoString(buf, "CASE WHEN (");
            ADD_REL_QUALIFIER(buf, varno);
-           appendStringInfo(buf, "*)::text IS NOT NULL THEN ");
+           appendStringInfoString(buf, "*)::text IS NOT NULL THEN ");
        }
 
        appendStringInfoString(buf, "ROW(");
        deparseTargetList(buf, root, varno, rel, false, attrs_used, qualify_col,
                          &retrieved_attrs);
-       appendStringInfoString(buf, ")");
+       appendStringInfoChar(buf, ')');
 
        /* Complete the CASE WHEN statement started above. */
        if (qualify_col)
-           appendStringInfo(buf, " END");
+           appendStringInfoString(buf, " END");
 
        heap_close(rel, NoLock);
        bms_free(attrs_used);
@@ -2759,7 +2759,7 @@ deparseAggref(Aggref *node, deparse_expr_cxt *context)
    appendStringInfoChar(buf, '(');
 
    /* Add DISTINCT */
-   appendStringInfo(buf, "%s", (node->aggdistinct != NIL) ? "DISTINCT " : "");
+   appendStringInfoString(buf, (node->aggdistinct != NIL) ? "DISTINCT " : "");
 
    if (AGGKIND_IS_ORDERED_SET(node->aggkind))
    {
@@ -2944,7 +2944,7 @@ appendGroupByClause(List *tlist, deparse_expr_cxt *context)
    if (!query->groupClause)
        return;
 
-   appendStringInfo(buf, " GROUP BY ");
+   appendStringInfoString(buf, " GROUP BY ");
 
    /*
     * Queries with grouping sets are not pushed down, so we don't expect
@@ -2981,7 +2981,7 @@ appendOrderByClause(List *pathkeys, deparse_expr_cxt *context)
    /* Make sure any constants in the exprs are printed portably */
    nestlevel = set_transmission_modes();
 
-   appendStringInfo(buf, " ORDER BY");
+   appendStringInfoString(buf, " ORDER BY");
    foreach(lcell, pathkeys)
    {
        PathKey    *pathkey = lfirst(lcell);
@@ -3035,7 +3035,7 @@ appendFunctionName(Oid funcid, deparse_expr_cxt *context)
 
    /* Always print the function name */
    proname = NameStr(procform->proname);
-   appendStringInfo(buf, "%s", quote_identifier(proname));
+   appendStringInfoString(buf, quote_identifier(proname));
 
    ReleaseSysCache(proctup);
 }
@@ -3070,9 +3070,9 @@ deparseSortGroupClause(Index ref, List *tlist, deparse_expr_cxt *context)
    else
    {
        /* Always parenthesize the expression. */
-       appendStringInfoString(buf, "(");
+       appendStringInfoChar(buf, '(');
        deparseExpr(expr, context);
-       appendStringInfoString(buf, ")");
+       appendStringInfoChar(buf, ')');
    }
 
    return (Node *) expr;
index 005e74201d477a104a3ab8e9d0e4af7f1b6d4994..9bc1d178fc7297b51bdb7a92ebf83eb47b9ceadf 100644 (file)
@@ -1117,9 +1117,9 @@ fetch_table_list(WalReceiverConn *wrconn, List *publications)
    Assert(list_length(publications) > 0);
 
    initStringInfo(&cmd);
-   appendStringInfo(&cmd, "SELECT DISTINCT t.schemaname, t.tablename\n"
-                    "  FROM pg_catalog.pg_publication_tables t\n"
-                    " WHERE t.pubname IN (");
+   appendStringInfoString(&cmd, "SELECT DISTINCT t.schemaname, t.tablename\n"
+                          "  FROM pg_catalog.pg_publication_tables t\n"
+                          " WHERE t.pubname IN (");
    first = true;
    foreach(lc, publications)
    {
@@ -1130,9 +1130,9 @@ fetch_table_list(WalReceiverConn *wrconn, List *publications)
        else
            appendStringInfoString(&cmd, ", ");
 
-       appendStringInfo(&cmd, "%s", quote_literal_cstr(pubname));
+       appendStringInfoString(&cmd, quote_literal_cstr(pubname));
    }
-   appendStringInfoString(&cmd, ")");
+   appendStringInfoChar(&cmd, ')');
 
    res = walrcv_exec(wrconn, cmd.data, 2, tableRow);
    pfree(cmd.data);
index 379d92a2b0c4143146b0c2980049c2cb24bde599..5ce3c7c5999218689e21e6a75a4fa65d789a83d3 100644 (file)
@@ -83,7 +83,7 @@ static void outChar(StringInfo str, char c);
 
 /* Write a character-string (possibly NULL) field */
 #define WRITE_STRING_FIELD(fldname) \
-   (appendStringInfo(str, " :" CppAsString(fldname) " "), \
+   (appendStringInfoString(str, " :" CppAsString(fldname) " "), \
     outToken(str, node->fldname))
 
 /* Write a parse location field (actually same as INT case) */
@@ -92,12 +92,12 @@ static void outChar(StringInfo str, char c);
 
 /* Write a Node field */
 #define WRITE_NODE_FIELD(fldname) \
-   (appendStringInfo(str, " :" CppAsString(fldname) " "), \
+   (appendStringInfoString(str, " :" CppAsString(fldname) " "), \
     outNode(str, node->fldname))
 
 /* Write a bitmapset field */
 #define WRITE_BITMAPSET_FIELD(fldname) \
-   (appendStringInfo(str, " :" CppAsString(fldname) " "), \
+   (appendStringInfoString(str, " :" CppAsString(fldname) " "), \
     outBitmapset(str, node->fldname))
 
 
index 37b481c00200c5366c9608de9d4ed2f1fb1f77de..3957bd37fb1edaea99ad76ef2cf3631f2ea0d72f 100644 (file)
@@ -355,7 +355,7 @@ libpqrcv_startstreaming(WalReceiverConn *conn,
                         options->slotname);
 
    if (options->logical)
-       appendStringInfo(&cmd, " LOGICAL");
+       appendStringInfoString(&cmd, " LOGICAL");
 
    appendStringInfo(&cmd, " %X/%X",
                     (uint32) (options->startpoint >> 32),
@@ -774,21 +774,21 @@ libpqrcv_create_slot(WalReceiverConn *conn, const char *slotname,
    appendStringInfo(&cmd, "CREATE_REPLICATION_SLOT \"%s\"", slotname);
 
    if (temporary)
-       appendStringInfo(&cmd, " TEMPORARY");
+       appendStringInfoString(&cmd, " TEMPORARY");
 
    if (conn->logical)
    {
-       appendStringInfo(&cmd, " LOGICAL pgoutput");
+       appendStringInfoString(&cmd, " LOGICAL pgoutput");
        switch (snapshot_action)
        {
            case CRS_EXPORT_SNAPSHOT:
-               appendStringInfo(&cmd, " EXPORT_SNAPSHOT");
+               appendStringInfoString(&cmd, " EXPORT_SNAPSHOT");
                break;
            case CRS_NOEXPORT_SNAPSHOT:
-               appendStringInfo(&cmd, " NOEXPORT_SNAPSHOT");
+               appendStringInfoString(&cmd, " NOEXPORT_SNAPSHOT");
                break;
            case CRS_USE_SNAPSHOT:
-               appendStringInfo(&cmd, " USE_SNAPSHOT");
+               appendStringInfoString(&cmd, " USE_SNAPSHOT");
                break;
        }
    }
index e9bd64b7a88838231d7d2df6e49290ea716ed4a0..7469ec773c6abc629923d273759056682985f289 100644 (file)
@@ -1656,11 +1656,11 @@ pg_get_partkeydef_worker(Oid relid, int prettyFlags,
    {
        case PARTITION_STRATEGY_LIST:
            if (!attrsOnly)
-               appendStringInfo(&buf, "LIST");
+               appendStringInfoString(&buf, "LIST");
            break;
        case PARTITION_STRATEGY_RANGE:
            if (!attrsOnly)
-               appendStringInfo(&buf, "RANGE");
+               appendStringInfoString(&buf, "RANGE");
            break;
        default:
            elog(ERROR, "unexpected partition strategy: %d",
@@ -1668,7 +1668,7 @@ pg_get_partkeydef_worker(Oid relid, int prettyFlags,
    }
 
    if (!attrsOnly)
-       appendStringInfo(&buf, " (");
+       appendStringInfoString(&buf, " (");
    sep = "";
    for (keyno = 0; keyno < form->partnatts; keyno++)
    {
@@ -5635,10 +5635,10 @@ get_rule_sortgroupclause(Index ref, List *tlist, bool force_colno,
                                  ||IsA(expr, WindowFunc));
 
        if (need_paren)
-           appendStringInfoString(context->buf, "(");
+           appendStringInfoChar(context->buf, '(');
        get_rule_expr(expr, context, true);
        if (need_paren)
-           appendStringInfoString(context->buf, ")");
+           appendStringInfoChar(context->buf, ')');
    }
 
    return expr;
@@ -5665,7 +5665,7 @@ get_rule_groupingset(GroupingSet *gset, List *targetlist,
        case GROUPING_SET_SIMPLE:
            {
                if (!omit_parens || list_length(gset->content) != 1)
-                   appendStringInfoString(buf, "(");
+                   appendStringInfoChar(buf, '(');
 
                foreach(l, gset->content)
                {
@@ -5678,7 +5678,7 @@ get_rule_groupingset(GroupingSet *gset, List *targetlist,
                }
 
                if (!omit_parens || list_length(gset->content) != 1)
-                   appendStringInfoString(buf, ")");
+                   appendStringInfoChar(buf, ')');
            }
            return;
 
@@ -5701,7 +5701,7 @@ get_rule_groupingset(GroupingSet *gset, List *targetlist,
        sep = ", ";
    }
 
-   appendStringInfoString(buf, ")");
+   appendStringInfoChar(buf, ')');
 }
 
 /*
@@ -8713,7 +8713,7 @@ get_rule_expr(Node *node, deparse_context *context,
                            sep = ", ";
                        }
 
-                       appendStringInfoString(buf, ")");
+                       appendStringInfoChar(buf, ')');
                        break;
 
                    case PARTITION_STRATEGY_RANGE:
@@ -10941,7 +10941,7 @@ get_range_partbound_string(List *bound_datums)
        }
        sep = ", ";
    }
-   appendStringInfoString(buf, ")");
+   appendStringInfoChar(buf, ')');
 
    return buf->data;
 }
index 323614c183d1aaad84e5904477233b47b9363529..c47624eff686e198392b04d43b93396cfda47382 100644 (file)
@@ -3458,8 +3458,8 @@ map_sql_type_to_xmlschema_type(Oid typeoid, int typmod)
            case BPCHAROID:
            case VARCHAROID:
            case TEXTOID:
-               appendStringInfo(&result,
-                                "  <xsd:restriction base=\"xsd:string\">\n");
+               appendStringInfoString(&result,
+                                      "  <xsd:restriction base=\"xsd:string\">\n");
                if (typmod != -1)
                    appendStringInfo(&result,
                                     "    <xsd:maxLength value=\"%d\"/>\n",
index 7566a66970852347cb162226d709e35966d96772..b455484befccfd98eb69506a97fe72d6330d7861 100644 (file)
@@ -455,7 +455,7 @@ FreePageManagerDump(FreePageManager *fpm)
    recycle = relptr_access(base, fpm->btree_recycle);
    if (recycle != NULL)
    {
-       appendStringInfo(&buf, "btree recycle:");
+       appendStringInfoString(&buf, "btree recycle:");
        FreePageManagerDumpSpans(fpm, recycle, 1, &buf);
    }
 
@@ -468,7 +468,7 @@ FreePageManagerDump(FreePageManager *fpm)
            continue;
        if (!dumped_any_freelist)
        {
-           appendStringInfo(&buf, "freelists:\n");
+           appendStringInfoString(&buf, "freelists:\n");
            dumped_any_freelist = true;
        }
        appendStringInfo(&buf, "  %zu:", f + 1);
@@ -1275,7 +1275,7 @@ FreePageManagerDumpBtree(FreePageManager *fpm, FreePageBtree *btp,
                             btp->u.leaf_key[index].first_page,
                             btp->u.leaf_key[index].npages);
    }
-   appendStringInfo(buf, "\n");
+   appendStringInfoChar(buf, '\n');
 
    if (btp->hdr.magic == FREE_PAGE_INTERNAL_MAGIC)
    {
@@ -1308,7 +1308,7 @@ FreePageManagerDumpSpans(FreePageManager *fpm, FreePageSpanLeader *span,
        span = relptr_access(base, span->next);
    }
 
-   appendStringInfo(buf, "\n");
+   appendStringInfoChar(buf, '\n');
 }
 
 /*
index 628bdea1fd498bcf961267763b6a2859c61c3f8e..b6e66267ffc2e5a43c829d3535c674cf6307ea06 100644 (file)
@@ -15424,7 +15424,7 @@ dumpTableSchema(Archive *fout, TableInfo *tbinfo)
 
            if (tbinfo->ispartition && !dopt->binary_upgrade)
            {
-               appendPQExpBufferStr(q, "\n");
+               appendPQExpBufferChar(q, '\n');
                appendPQExpBufferStr(q, tbinfo->partbound);
            }
 
@@ -17127,8 +17127,7 @@ dumpRule(Archive *fout, RuleInfo *rinfo)
 
        appendPQExpBuffer(delcmd, "CREATE OR REPLACE VIEW %s.",
                          fmtId(tbinfo->dobj.namespace->dobj.name));
-       appendPQExpBuffer(delcmd, "%s",
-                         fmtId(tbinfo->dobj.name));
+       appendPQExpBufferStr(delcmd, fmtId(tbinfo->dobj.name));
        result = createDummyViewAsClause(fout, tbinfo);
        appendPQExpBuffer(delcmd, " AS\n%s;\n", result->data);
        destroyPQExpBuffer(result);
index c0a0346cd9c9bb39f2a3702a4d58fa0af1334fec..806b537e64faf6a5d4d547884f69d3f77b5cc590 100644 (file)
@@ -1575,7 +1575,7 @@ dumpDatabaseConfig(PGconn *conn, const char *dbname)
        appendStringLiteralConn(buf, dbname, conn);
 
        if (server_version >= 90000)
-           appendPQExpBuffer(buf, ")");
+           appendPQExpBufferChar(buf, ')');
 
        res = executeQuery(conn, buf->data);
        if (PQntuples(res) == 1 &&
index 4e04459d45ea53a5104fe92814e37fe6cf00ffea..96f3a402a4097f6a3f5cb04be9229b105c67d00f 100644 (file)
@@ -4676,7 +4676,7 @@ get_create_object_cmd(EditableObjectType obj_type, Oid oid,
                            psql_error("could not parse reloptions array\n");
                            result = false;
                        }
-                       appendPQExpBufferStr(buf, ")");
+                       appendPQExpBufferChar(buf, ')');
                    }
 
                    /* View definition from pg_get_viewdef (a SELECT query) */
@@ -4862,7 +4862,7 @@ minimal_error_message(PGresult *res)
        appendPQExpBufferStr(msg, fld);
    else
        appendPQExpBufferStr(msg, "(not available)");
-   appendPQExpBufferStr(msg, "\n");
+   appendPQExpBufferChar(msg, '\n');
 
    psql_error("%s", msg->data);
 
index 798e71045fd88147df327c7701c8de93fbe1cfca..f6049cc9e5c13fda23a55a2d7a3acbd490b15ff4 100644 (file)
@@ -3177,7 +3177,7 @@ describeRoles(const char *pattern, bool verbose, bool showSystem)
        if (strcmp(PQgetvalue(res, i, 7), "") != 0)
        {
            if (buf.len > 0)
-               appendPQExpBufferStr(&buf, "\n");
+               appendPQExpBufferChar(&buf, '\n');
            appendPQExpBufferStr(&buf, _("Password valid until "));
            appendPQExpBufferStr(&buf, PQgetvalue(res, i, 7));
        }
index d88093f8b6e9e80bf6c9e93e332ffde26eea1669..0e36edcc5d1e620fd9fb51e0f904103cfa8ff063 100644 (file)
@@ -313,7 +313,7 @@ main(int argc, char *argv[])
            if (cell->next)
                appendPQExpBuffer(&sql, "%s,", fmtId(cell->val));
            else
-               appendPQExpBuffer(&sql, "%s", fmtId(cell->val));
+               appendPQExpBufferStr(&sql, fmtId(cell->val));
        }
    }
    appendPQExpBufferChar(&sql, ';');
index 5a964bf0b57296da19c7281557a532c11ed17345..d0e97ecdd46367ad0e47411688cc3dde771c875f 100644 (file)
@@ -5508,8 +5508,8 @@ conninfo_uri_parse_options(PQconninfoOption *options, const char *uri,
        if (prevchar != ',')
            break;
        ++p;                    /* advance past comma separator */
-       appendPQExpBufferStr(&hostbuf, ",");
-       appendPQExpBufferStr(&portbuf, ",");
+       appendPQExpBufferChar(&hostbuf, ',');
+       appendPQExpBufferChar(&portbuf, ',');
    }
 
    /* Save final values for host and port. */