From 690039aea2e325317202feb083f67cb676ab08f3 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 5 Jun 2016 23:20:15 -0400
Subject: [PATCH] add missing conditional accidentally left out of the Vanilla
 backports

---
 pd/src/g_canvas.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/pd/src/g_canvas.c b/pd/src/g_canvas.c
index 4599a7c35..650982b1e 100644
--- a/pd/src/g_canvas.c
+++ b/pd/src/g_canvas.c
@@ -1171,8 +1171,9 @@ void canvas_initbang(t_canvas *x)
     t_symbol *s = gensym("loadbang");
     /* run "initbang" for all subpatches, but NOT for the child abstractions */
     for (y = x->gl_list; y; y = y->g_next)
-        if (!canvas_isabstraction((t_canvas *)y))
-            canvas_initbang((t_canvas *)y);
+        if (pd_class(&y->g_pd) == canvas_class &&
+            !canvas_isabstraction((t_canvas *)y))
+                canvas_initbang((t_canvas *)y);
 
     /* call the initbang()-method for objects that have one */
     for (y = x->gl_list; y; y = y->g_next)
-- 
GitLab