Fixed not free'd heap tuple if BEFORE DELETE trigger procedure
authorJan Wieck <JanWieck@Yahoo.com>
Sun, 7 Feb 1999 15:13:13 +0000 (15:13 +0000)
committerJan Wieck <JanWieck@Yahoo.com>
Sun, 7 Feb 1999 15:13:13 +0000 (15:13 +0000)
returns new created tuple instead of the one given to it.

Jan

src/backend/commands/trigger.c

index 9636466bffb59476911301de1b3a40875fb6178d..f5fd96d42428f69455383f56033724dc1af1ab47 100644 (file)
@@ -684,6 +684,8 @@ ExecBRDeleteTriggers(Relation rel, ItemPointer tupleid)
        newtuple = ExecCallTriggerFunc(trigger[i]);
        if (newtuple == NULL)
            break;
+       if (newtuple != trigtuple)
+           pfree(newtuple);
    }
    CurrentTriggerData = NULL;
    pfree(SaveTriggerData);