aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarc G. Fournier <scrappy@hub.org>1996-07-15 19:11:23 +0000
committerMarc G. Fournier <scrappy@hub.org>1996-07-15 19:11:23 +0000
commitd838e30f13028d37a383b7adb1f7f6e094df1496 (patch)
tree5c0b982c02d493da3b12a618733541999eb14861 /src
parent76145bd74b0fcf367200b2cf09f8858df8db7d53 (diff)
downloadpostgresql-d838e30f13028d37a383b7adb1f7f6e094df1496.tar.gz
postgresql-d838e30f13028d37a383b7adb1f7f6e094df1496.zip
Submitted by Openlink, requires -DOPENLINK_PATCHES in Makefile.global
varchar.diff ------------ This patch was necessary for the OpenLink Postgres Database Agent. I think this fixes a bug anyway. The following query demonstrates this bug: create table foo (bar varchar); insert into foo values (''); -- no problem select * from foo where bar = ''; -- fails
Diffstat (limited to 'src')
-rw-r--r--src/backend/utils/adt/varchar.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/backend/utils/adt/varchar.c b/src/backend/utils/adt/varchar.c
index 341ad94f009..f33295d27db 100644
--- a/src/backend/utils/adt/varchar.c
+++ b/src/backend/utils/adt/varchar.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.1.1.1 1996/07/09 06:22:05 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/varchar.c,v 1.2 1996/07/15 19:11:23 scrappy Exp $
*
*-------------------------------------------------------------------------
*/
@@ -68,8 +68,13 @@ bpcharin(char *s, int dummy, int typlen)
typlen = len + 4;
}
+#ifndef OPENLINK_PATCHES
if (len < 1 || len > 4096)
elog(WARN, "bpcharin: length of char() must be between 1 and 4096");
+#else
+ if (len > 4096)
+ elog(WARN, "bpcharin: length of char() must be less than 4096");
+#endif
result = (char *) palloc(typlen);
*(int32*)result = typlen;
@@ -132,8 +137,13 @@ varcharin(char *s, int dummy, int typlen)
typlen = len + 4;
}
+#ifndef OPENLINK_PATCHES
if (len < 1 || len > 4096)
elog(WARN, "bpcharin: length of char() must be between 1 and 4096");
+#else
+ if (len > 4096)
+ elog(WARN, "varcharin: length of char() must be less than 4096");
+#endif
result = (char *) palloc(typlen);
*(int32*)result = typlen;