*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/contrib/tsearch2/tsearch2.c,v 1.8 2009/01/01 17:23:32 momjian Exp $
+ * $PostgreSQL: pgsql/contrib/tsearch2/tsearch2.c,v 1.9 2009/01/28 18:31:32 teodor Exp $
*
*-------------------------------------------------------------------------
*/
{
TriggerData *trigdata;
Trigger *trigger;
- char **tgargs;
+ char **tgargs,
+ **tgargs_old;
int i;
+ Datum res;
/* Check call context */
if (!CALLED_AS_TRIGGER(fcinfo)) /* internal error */
tgargs[1] = pstrdup(GetConfigOptionByName("default_text_search_config",
NULL));
+ tgargs_old = trigger->tgargs;
trigger->tgargs = tgargs;
trigger->tgnargs++;
- return tsvector_update_trigger_byid(fcinfo);
+ res = tsvector_update_trigger_byid(fcinfo);
+
+ /* restore old trigger data */
+ trigger->tgargs = tgargs_old;
+ trigger->tgnargs--;
+
+ pfree(tgargs[1]);
+ pfree(tgargs);
+
+ return res;
}