Fix possible crash at transaction end when a plpgsql function is used and

Tom Lane <tgl@sss.pgh.pa.us>

Commit: b3c47b1e5e6427ba64ee0feed658057d2077b17d
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2006-03-02T05:34:17Z
Releases: 8.1.4
Fix possible crash at transaction end when a plpgsql function is used and
then modified within the same transaction.  The code was using a linked list
of active PLpgSQL_expr structs, which was OK when it was written because
plpgsql never released any parse data structures for the life of the backend.
But since Neil fixed plpgsql's memory management, elements of the linked list
could be freed, leading to crash when the list is chased.  Per report and test
case from Kris Jurka.

Files

PathChange+/−
src/pl/plpgsql/src/pl_exec.c modified +7 −25
src/pl/plpgsql/src/plpgsql.h modified +6 −3