From 5b2c4725c08600d89e7d8dc11828956503cb3b21 Mon Sep 17 00:00:00 2001
From: Ivica Ico Bukvic <ico@vt.edu>
Date: Wed, 5 Nov 2014 00:16:27 -0500
Subject: [PATCH] *fixed bug where trigger when fed anything (e.g.  a single
 word, like "restart," with no symbol prefix), it would output data twice
 through some outlets due to faulty way of dealing with anything->list
 function call.

---
 pd/src/x_connective.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/pd/src/x_connective.c b/pd/src/x_connective.c
index 3c7e32858..d1d19c74a 100644
--- a/pd/src/x_connective.c
+++ b/pd/src/x_connective.c
@@ -1132,6 +1132,7 @@ static void *trigger_new(t_symbol *s, int argc, t_atom *argv)
 
 static void trigger_list(t_trigger *x, t_symbol *s, int argc, t_atom *argv)
 {
+    //fprintf(stderr,"trigger_list %s\n", s->s_name);
     t_triggerout *u;
     int i;
     for (i = x->x_n, u = x->x_vec + i; u--, i--;)
@@ -1185,7 +1186,11 @@ static void trigger_anything(t_trigger *x, t_symbol *s, int argc, t_atom *argv)
         {
             outlet_symbol(u->u_outlet, &u->u_sym);
         }        
-        else trigger_symbol(x, s);
+        else
+        {
+            trigger_symbol(x, s);
+            break;
+        }
     }
 }
 
-- 
GitLab