From ddef9a00289fcdb21651b9ea8f0ee9e9095bdab4 Mon Sep 17 00:00:00 2001
From: Robert Haas <rhaas@postgresql.org>
Date: Tue, 22 Jan 2013 21:37:01 -0500
Subject: [PATCH] Fix a few small bugs in yesterday's event trigger patch.

Dimitri Fontaine
---
 src/backend/commands/event_trigger.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/backend/commands/event_trigger.c b/src/backend/commands/event_trigger.c
index dc40de2c024..18b37537c0f 100644
--- a/src/backend/commands/event_trigger.c
+++ b/src/backend/commands/event_trigger.c
@@ -551,7 +551,7 @@ filter_event_trigger(const char **tag, EventTriggerCacheItem  *item)
 	}
 
 	/* Filter by tags, if any were specified. */
-	if (item->ntags != 0 && bsearch(&tag, item->tag,
+	if (item->ntags != 0 && bsearch(tag, item->tag,
 									item->ntags, sizeof(char *),
 									pg_qsort_strcmp) == NULL)
 		return false;
@@ -752,6 +752,9 @@ EventTriggerInvoke(List *fn_oid_list, EventTriggerData *trigdata)
 	ListCell	   *lc;
 	bool			first = true;
 
+	/* Guard against stack overflow due to recursive event trigger */
+	check_stack_depth();
+
 	/*
 	 * Let's evaluate event triggers in their own memory context, so
 	 * that any leaks get cleaned up promptly.
-- 
GitLab