summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-05-03 19:18:48 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-05-03 19:18:48 +0000
commitecbc6dd3e97059bd5dee84939d5ea673754b4d38 (patch)
tree938d08a112a2a70d45424c99edccff22122bcac4
parent0d8cdcfe888026b934fe43d9e3c4fc39a7091aa6 (diff)
downloadpostgresql-ecbc6dd3e97059bd5dee84939d5ea673754b4d38.tar.gz
Alter the signature for encoding conversion functions to declare the
output area as INTERNAL not CSTRING. This is to prevent people from calling the functions by hand. This is a permanent solution for the back branches but I hope it is just a stopgap for HEAD.
-rw-r--r--doc/src/sgml/ref/create_conversion.sgml6
-rw-r--r--src/backend/commands/conversioncmds.c4
-rw-r--r--src/backend/utils/mb/conversion_procs/Makefile4
3 files changed, 7 insertions, 7 deletions
diff --git a/doc/src/sgml/ref/create_conversion.sgml b/doc/src/sgml/ref/create_conversion.sgml
index bf8ec00ff7..61b4613637 100644
--- a/doc/src/sgml/ref/create_conversion.sgml
+++ b/doc/src/sgml/ref/create_conversion.sgml
@@ -1,4 +1,4 @@
-<!-- $Header: /cvsroot/pgsql/doc/src/sgml/ref/create_conversion.sgml,v 1.5 2002/11/02 02:33:03 tgl Exp $ -->
+<!-- $Header: /cvsroot/pgsql/doc/src/sgml/ref/create_conversion.sgml,v 1.5.2.1 2005/05/03 19:18:48 tgl Exp $ -->
<refentry id="SQL-CREATECONVERSION">
<refmeta>
@@ -8,7 +8,7 @@
<refnamediv>
<refname>CREATE CONVERSION</refname>
- <refpurpose>define a user-defined conversion</refpurpose>
+ <refpurpose>define a user-defined encoding conversion</refpurpose>
</refnamediv>
<refsynopsisdiv>
@@ -102,7 +102,7 @@ CREATE [DEFAULT] CONVERSION <replaceable>conversion_name</replaceable>
INTEGER, -- source encoding id
INTEGER, -- destination encoding id
CSTRING, -- source string (null terminated C string)
- CSTRING, -- destination string (null terminated C string)
+ INTERNAL, -- destination (fill with a null terminated C string)
INTEGER -- source string length
) returns VOID;
</programlisting>
diff --git a/src/backend/commands/conversioncmds.c b/src/backend/commands/conversioncmds.c
index 6115b0e12e..69266d48f5 100644
--- a/src/backend/commands/conversioncmds.c
+++ b/src/backend/commands/conversioncmds.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/conversioncmds.c,v 1.5 2002/11/02 02:33:03 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/conversioncmds.c,v 1.5.2.1 2005/05/03 19:18:48 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -41,7 +41,7 @@ CreateConversionCommand(CreateConversionStmt *stmt)
const char *for_encoding_name = stmt->for_encoding_name;
const char *to_encoding_name = stmt->to_encoding_name;
List *func_name = stmt->func_name;
- static Oid funcargs[] = {INT4OID, INT4OID, CSTRINGOID, CSTRINGOID, INT4OID};
+ static Oid funcargs[] = {INT4OID, INT4OID, CSTRINGOID, INTERNALOID, INT4OID};
/* Convert list of names to a name and namespace */
namespaceId = QualifiedNameGetCreationNamespace(stmt->conversion_name,
diff --git a/src/backend/utils/mb/conversion_procs/Makefile b/src/backend/utils/mb/conversion_procs/Makefile
index 6736a536c2..e60c8b1c5c 100644
--- a/src/backend/utils/mb/conversion_procs/Makefile
+++ b/src/backend/utils/mb/conversion_procs/Makefile
@@ -4,7 +4,7 @@
# Makefile for utils/mb/conversion_procs
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/backend/utils/mb/conversion_procs/Makefile,v 1.7.2.1 2003/08/08 15:49:10 tgl Exp $
+# $Header: /cvsroot/pgsql/src/backend/utils/mb/conversion_procs/Makefile,v 1.7.2.2 2005/05/03 19:18:48 tgl Exp $
#
#-------------------------------------------------------------------------
@@ -156,7 +156,7 @@ $(SQLSCRIPT): Makefile
func=$$1; shift; \
obj=$$1; shift; \
echo "-- $$se --> $$de"; \
- echo "CREATE OR REPLACE FUNCTION $$func (INTEGER, INTEGER, CSTRING, CSTRING, INTEGER) RETURNS VOID AS '$$"libdir"/$$obj', '$$func' LANGUAGE 'c' STRICT;"; \
+ echo "CREATE OR REPLACE FUNCTION $$func (INTEGER, INTEGER, CSTRING, INTERNAL, INTEGER) RETURNS VOID AS '$$"libdir"/$$obj', '$$func' LANGUAGE 'c' STRICT;"; \
echo "DROP CONVERSION pg_catalog.$$name;"; \
echo "CREATE DEFAULT CONVERSION pg_catalog.$$name FOR '$$se' TO '$$de' FROM $$func;"; \
done > $@