aboutsummaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2007-01-25 04:17:46 +0000
committerBruce Momjian <bruce@momjian.us>2007-01-25 04:17:46 +0000
commit5af6b2abe90d52f7a4dee998c3a5eb24794bf0b1 (patch)
tree60f7b5bb114d7cab77c0614bc7b13305b1c3e796 /src/backend
parent251281767a9bc10f2e14f50ceb88f19c67113b57 (diff)
downloadpostgresql-5af6b2abe90d52f7a4dee998c3a5eb24794bf0b1.tar.gz
postgresql-5af6b2abe90d52f7a4dee998c3a5eb24794bf0b1.zip
Properly detoast access to bytea field pg_trigger.tgargs. Old code
might cause server crash. Backpatch to 8.2.X.
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/commands/tablecmds.c5
-rw-r--r--src/backend/commands/trigger.c5
-rw-r--r--src/backend/utils/adt/ruleutils.c5
3 files changed, 6 insertions, 9 deletions
diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c
index 815cb2459bb..ced08506bce 100644
--- a/src/backend/commands/tablecmds.c
+++ b/src/backend/commands/tablecmds.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/commands/tablecmds.c,v 1.210 2007/01/05 22:19:26 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/commands/tablecmds.c,v 1.211 2007/01/25 04:17:45 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1800,8 +1800,7 @@ update_ri_trigger_args(Oid relid,
* line; so does trigger.c ...
*/
tgnargs = pg_trigger->tgnargs;
- val = (bytea *)
- DatumGetPointer(fastgetattr(tuple,
+ val = DatumGetByteaP(fastgetattr(tuple,
Anum_pg_trigger_tgargs,
tgrel->rd_att, &isnull));
if (isnull || tgnargs < RI_FIRST_ATTNAME_ARGNO ||
diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c
index 9542e3f1198..cc7dfc895b8 100644
--- a/src/backend/commands/trigger.c
+++ b/src/backend/commands/trigger.c
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/commands/trigger.c,v 1.211 2007/01/05 22:19:26 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/commands/trigger.c,v 1.212 2007/01/25 04:17:46 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -906,8 +906,7 @@ RelationBuildTriggers(Relation relation)
char *p;
int i;
- val = (bytea *)
- DatumGetPointer(fastgetattr(htup,
+ val = DatumGetByteaP(fastgetattr(htup,
Anum_pg_trigger_tgargs,
tgrel->rd_att, &isnull));
if (isnull)
diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c
index baef0100073..5222fd3a602 100644
--- a/src/backend/utils/adt/ruleutils.c
+++ b/src/backend/utils/adt/ruleutils.c
@@ -9,7 +9,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/utils/adt/ruleutils.c,v 1.245 2007/01/20 23:13:01 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/ruleutils.c,v 1.246 2007/01/25 04:17:46 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -529,8 +529,7 @@ pg_get_triggerdef(PG_FUNCTION_ARGS)
char *p;
int i;
- val = (bytea *)
- DatumGetPointer(fastgetattr(ht_trig,
+ val = DatumGetByteaP(fastgetattr(ht_trig,
Anum_pg_trigger_tgargs,
tgrel->rd_att, &isnull));
if (isnull)