postgres.git / summary / log / commit / refs

commit    b3196e65f5bfc997ec7fa3f91645a09289c10dee
Author:   Alvaro Herrera <alvherre@alvh.no-ip.org>
Date:     Wed Mar 25 17:28:34 2015 +0000

    Fix bug for array-formatted identities of user mappings
    
    I failed to realize that server names reported in the object args array
    would get quoted, which is wrong; remove that, making sure that it's
    only quoted in the string-formatted identity.
    
    This bug was introduced by my commit cf34e373, which was backpatched,
    but since object name/args arrays are new in commit a676201490c8, there
    is no need to backpatch this any further.


src/backend/catalog/objectaddress.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/backend/catalog/objectaddress.c b/src/backend/catalog/objectaddress.c index 5025a4ee5bc..e82a448e6ff 100644 --- a/src/backend/catalog/objectaddress.c +++ b/src/backend/catalog/objectaddress.c @@ -4254,7 +4254,7 @@ getObjectIdentityParts(const ObjectAddress *object, ReleaseSysCache(tup); if (OidIsValid(useid)) - usename = quote_identifier(GetUserNameFromId(useid)); + usename = GetUserNameFromId(useid); else usename = "public"; @@ -4264,7 +4264,8 @@ getObjectIdentityParts(const ObjectAddress *object, *objargs = list_make1(pstrdup(srv->servername)); } - appendStringInfo(&buffer, "%s on server %s", usename, + appendStringInfo(&buffer, "%s on server %s", + quote_identifier(usename), srv->servername); break; } [parent: dc8e05295ab1]