From fe1c7b3726551ed58266f22738a8cf4a2cd51472 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 17 Aug 2015 20:06:08 -0400
Subject: [PATCH] add ".pd" extension to abstraction name in canvas type
 definition

---
 pd/src/g_template.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/pd/src/g_template.c b/pd/src/g_template.c
index e0a38c19b..cab698739 100644
--- a/pd/src/g_template.c
+++ b/pd/src/g_template.c
@@ -88,7 +88,7 @@ t_template *template_new(t_symbol *templatesym, int argc, t_atom *argv)
 //            newtype = DT_LIST;
         else if (newtypesym == gensym("canvas"))
         {
-            t_symbol *filename;
+            char filename[MAXPDSTRING+3];
             t_binbuf *b = binbuf_new();
             if (argc < 3 || argv[2].a_type != A_SYMBOL)
             {
@@ -96,9 +96,9 @@ t_template *template_new(t_symbol *templatesym, int argc, t_atom *argv)
                 goto bad;
             }
 //            filename = canvas_makebindsym(argv[2].a_w.w_symbol);
-            filename = argv[2].a_w.w_symbol;
-            if (binbuf_read_via_canvas(b, filename->s_name, canvas_getcurrent(), 0))
-                post("warning: abstraction %s not found", filename->s_name);
+            sprintf(filename, "%s.pd", argv[2].a_w.w_symbol->s_name);
+            if (binbuf_read_via_canvas(b, filename, canvas_getcurrent(), 0))
+                post("warning: abstraction %s not found", filename);
             else
                 newbinbuf = b;
             newtype = DT_LIST;
-- 
GitLab