Fix a few small bugs in yesterday's event trigger patch.
authorRobert Haas <rhaas@postgresql.org>
Wed, 23 Jan 2013 02:37:01 +0000 (21:37 -0500)
committerRobert Haas <rhaas@postgresql.org>
Wed, 23 Jan 2013 02:37:01 +0000 (21:37 -0500)
Dimitri Fontaine

src/backend/commands/event_trigger.c

index dc40de2c02483f92b9c131636973b7eb077109dd..18b37537c0fefc309a0f61cc07a23db28279aea5 100644 (file)
@@ -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.