aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1997-11-23 21:39:12 +0000
committerBruce Momjian <bruce@momjian.us>1997-11-23 21:39:12 +0000
commit1409819a870e3028e1c519aec84c3b396ab14348 (patch)
tree0d8b9efdc0a0f5cbe63757c551afb1a88185e69d /src
parentf4253b0b4994c35dd04ec6f6f96d98a763d11a8e (diff)
downloadpostgresql-1409819a870e3028e1c519aec84c3b396ab14348.tar.gz
postgresql-1409819a870e3028e1c519aec84c3b396ab14348.zip
Fix for textcat on varchar() fields.
Diffstat (limited to 'src')
-rw-r--r--src/backend/utils/adt/varlena.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/backend/utils/adt/varlena.c b/src/backend/utils/adt/varlena.c
index e149cc1a4bb..4c4aa5b3630 100644
--- a/src/backend/utils/adt/varlena.c
+++ b/src/backend/utils/adt/varlena.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/varlena.c,v 1.21 1997/09/08 21:48:42 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/varlena.c,v 1.22 1997/11/23 21:39:12 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -253,9 +253,14 @@ textcat(text *t1, text *t2)
len1 = (PointerIsValid(t1) ? (VARSIZE(t1) - VARHDRSZ) : 0);
if (len1 < 0)
len1 = 0;
+ while (len1 > 0 && VARDATA(t1)[len1 - 1] == '\0')
+ len1--;
+
len2 = (PointerIsValid(t2) ? (VARSIZE(t2) - VARHDRSZ) : 0);
if (len2 < 0)
len2 = 0;
+ while (len2 > 0 && VARDATA(t2)[len2 - 1] == '\0')
+ len2--;
result = PALLOC(len = len1 + len2 + VARHDRSZ);