diff options
Diffstat (limited to 'src/backend/utils/adt/trigfuncs.c')
-rw-r--r-- | src/backend/utils/adt/trigfuncs.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/backend/utils/adt/trigfuncs.c b/src/backend/utils/adt/trigfuncs.c index 633f3d20dc5..b13bdc36e14 100644 --- a/src/backend/utils/adt/trigfuncs.c +++ b/src/backend/utils/adt/trigfuncs.c @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/backend/utils/adt/trigfuncs.c,v 1.2 2008/11/04 00:29:39 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/trigfuncs.c,v 1.3 2008/11/05 18:49:27 adunstan Exp $ * *------------------------------------------------------------------------- */ @@ -62,6 +62,12 @@ suppress_redundant_updates_trigger(PG_FUNCTION_ARGS) newheader = newtuple->t_data; oldheader = oldtuple->t_data; + if (oldheader->t_infomask & HEAP_HASOID) + { + Oid oldoid = HeapTupleHeaderGetOid(oldheader); + HeapTupleHeaderSetOid(newheader, oldoid); + } + /* if the tuple payload is the same ... */ if (newtuple->t_len == oldtuple->t_len && newheader->t_hoff == oldheader->t_hoff && @@ -77,5 +83,6 @@ suppress_redundant_updates_trigger(PG_FUNCTION_ARGS) rettuple = NULL; } + return PointerGetDatum(rettuple); } |