Alvaro Herrera wrote:
> Andrew Dunstan wrote:
> 
> > Not sure I understand what this comment I noticed on a very brief glance is 
> > about:
> >
> >  /* assume no newlines in funcname or filename... */
> >
> > If it's about what to quote, we need to quote anything that might contain a 
> > newline, quote or comma. Filenames certainly come into that category.
> 
> Huh, sorry, that's a leftover comment.  The inserted string is quoted
> inside appendCSVLiteral.  Thanks, I'll fix it.

This part now looks like this (it was a bit duplicative):

    /* file error location */
    if (Log_error_verbosity >= PGERROR_VERBOSE)
    {
        StringInfoData  msgbuf;

        initStringInfo(&msgbuf);

        if (edata->funcname && edata->filename)
            appendStringInfo(&msgbuf, "%s, %s:%d",
                             edata->funcname, edata->filename,
                             edata->lineno);
        else if (edata->filename)
            appendStringInfo(&msgbuf, "%s:%d",
                             edata->filename, edata->lineno);
        appendCSVLiteral(&buf, msgbuf.data);
        pfree(msgbuf.data);
    }


-- 
Alvaro Herrera                  http://www.amazon.com/gp/registry/5ZYLFMCVHXC
<Schwern> It does it in a really, really complicated way
<crab> why does it need to be complicated?
<Schwern> Because it's MakeMaker.

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply via email to