Fix some string building in getObjectDescription.

This commit is contained in:
Alvaro Herrera 2008-06-05 15:04:39 +00:00
parent c8e0d68aa5
commit f23b79147b

View File

@ -8,7 +8,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/catalog/dependency.c,v 1.72 2008/05/12 00:00:46 alvherre Exp $
* $PostgreSQL: pgsql/src/backend/catalog/dependency.c,v 1.73 2008/06/05 15:04:39 alvherre Exp $
*
*-------------------------------------------------------------------------
*/
@ -2005,6 +2005,7 @@ getObjectDescription(const ObjectAddress *object)
SysScanDesc amscan;
HeapTuple tup;
Form_pg_amop amopForm;
StringInfoData opfam;
amopDesc = heap_open(AccessMethodOperatorRelationId,
AccessShareLock);
@ -2025,10 +2026,18 @@ getObjectDescription(const ObjectAddress *object)
amopForm = (Form_pg_amop) GETSTRUCT(tup);
appendStringInfo(&buffer, _("operator %d %s of "),
initStringInfo(&opfam);
getOpFamilyDescription(&opfam, amopForm->amopfamily);
/*
* translator: %d is the operator strategy (a number), the
* first %s is the textual form of the operator, and the second
* %s is the description of the operator family.
*/
appendStringInfo(&buffer, _("operator %d %s of %s"),
amopForm->amopstrategy,
format_operator(amopForm->amopopr));
getOpFamilyDescription(&buffer, amopForm->amopfamily);
format_operator(amopForm->amopopr),
opfam.data);
pfree(opfam.data);
systable_endscan(amscan);
heap_close(amopDesc, AccessShareLock);
@ -2042,6 +2051,7 @@ getObjectDescription(const ObjectAddress *object)
SysScanDesc amscan;
HeapTuple tup;
Form_pg_amproc amprocForm;
StringInfoData opfam;
amprocDesc = heap_open(AccessMethodProcedureRelationId,
AccessShareLock);
@ -2062,10 +2072,18 @@ getObjectDescription(const ObjectAddress *object)
amprocForm = (Form_pg_amproc) GETSTRUCT(tup);
appendStringInfo(&buffer, _("function %d %s of "),
initStringInfo(&opfam);
getOpFamilyDescription(&opfam, amprocForm->amprocfamily);
/*
* translator: %d is the function number, the first %s is the
* textual form of the function with arguments, and the second
* %s is the description of the operator family.
*/
appendStringInfo(&buffer, _("function %d %s of %s"),
amprocForm->amprocnum,
format_procedure(amprocForm->amproc));
getOpFamilyDescription(&buffer, amprocForm->amprocfamily);
format_procedure(amprocForm->amproc),
opfam.data);
pfree(opfam.data);
systable_endscan(amscan);
heap_close(amprocDesc, AccessShareLock);