diff --git a/pd/src/x_connective.c b/pd/src/x_connective.c
index 92f8042684f29866b3f5fff9854514cb5e95916e..94214a7a9dfc03704f839bc241138871f6c6d9e0 100644
--- a/pd/src/x_connective.c
+++ b/pd/src/x_connective.c
@@ -596,7 +596,7 @@ static void route_list(t_route *x, t_symbol *sel, int argc, t_atom *argv)
                 }
             }
         }
-        else
+        else if (argv[0].a_type == A_SYMBOL)   /* one symbol arg */
         {
             for (nelement = x->x_nelement, e = x->x_vec; nelement--; e++)
             {