summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorThomas Munro <tmunro@postgresql.org>2023-04-08 21:55:28 +1200
committerThomas Munro <tmunro@postgresql.org>2023-04-08 22:09:17 +1200
commit6db75edb2ecbc9f6912f90b671b01ab4ac3a01b0 (patch)
tree3131464af8d79aa5d4679c9c4ebb18cf2c5fce6c /contrib
parent4f51429dd7f194e36af32b557ecdce555b5ab51b (diff)
downloadpostgresql-6db75edb2ecbc9f6912f90b671b01ab4ac3a01b0.tar.gz
Update contrib/trgm_regexp's memory management.
While no code change was necessary for this code to keep working, we don't need to use PG_TRY()/PG_FINALLY() with explicit clean-up while working with regexes anymore. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/CA%2BhUKGK3PGKwcKqzoosamn36YW-fsuTdOPPF1i_rtEO%3DnEYKSg%40mail.gmail.com
Diffstat (limited to 'contrib')
-rw-r--r--contrib/pg_trgm/trgm_regexp.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/contrib/pg_trgm/trgm_regexp.c b/contrib/pg_trgm/trgm_regexp.c
index 06cd3db67b..1d36946067 100644
--- a/contrib/pg_trgm/trgm_regexp.c
+++ b/contrib/pg_trgm/trgm_regexp.c
@@ -549,22 +549,9 @@ createTrgmNFA(text *text_re, Oid collation,
REG_ADVANCED | REG_NOSUB, collation);
#endif
- /*
- * Since the regexp library allocates its internal data structures with
- * malloc, we need to use a PG_TRY block to ensure that pg_regfree() gets
- * done even if there's an error.
- */
- PG_TRY();
- {
- trg = createTrgmNFAInternal(&regex, graph, rcontext);
- }
- PG_FINALLY();
- {
- pg_regfree(&regex);
- }
- PG_END_TRY();
+ trg = createTrgmNFAInternal(&regex, graph, rcontext);
- /* Clean up all the cruft we created */
+ /* Clean up all the cruft we created (including regex) */
MemoryContextSwitchTo(oldcontext);
MemoryContextDelete(tmpcontext);