aboutsummaryrefslogtreecommitdiff
path: root/pd/src/g_canvas.c
diff options
context:
space:
mode:
authorMiller Puckette <millerpuckette@users.sourceforge.net>2008-07-04 03:53:15 +0000
committerMiller Puckette <millerpuckette@users.sourceforge.net>2008-07-04 03:53:15 +0000
commit783aafff32c7e02727e73d86918fa524dfc76e22 (patch)
tree6530c7f914a406effea6b5623da4a47f6cf1c611 /pd/src/g_canvas.c
parentbc7cefb9a1494094846def83a29b3bed7485e330 (diff)
many bug fixes.
sigmund~ and bonk~ updates (ongoing) some new math objects svn path=/trunk/; revision=10140
Diffstat (limited to 'pd/src/g_canvas.c')
-rw-r--r--pd/src/g_canvas.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/pd/src/g_canvas.c b/pd/src/g_canvas.c
index c6481d28..3220360f 100644
--- a/pd/src/g_canvas.c
+++ b/pd/src/g_canvas.c
@@ -1338,7 +1338,7 @@ void canvas_savedeclarationsto(t_canvas *x, t_binbuf *b)
}
}
-static void canvas_completepath(char *from, char *to)
+static void canvas_completepath(char *from, char *to, int bufsize)
{
if (sys_isabsolutepath(from))
{
@@ -1346,12 +1346,12 @@ static void canvas_completepath(char *from, char *to)
}
else
{ // if not absolute path, append Pd lib dir
- strncpy(to, sys_libdir->s_name, FILENAME_MAX-4);
- to[FILENAME_MAX-3] = '\0';
+ strncpy(to, sys_libdir->s_name, bufsize-4);
+ to[bufsize-3] = '\0';
strcat(to, "/");
}
- strncat(to, from, FILENAME_MAX-strlen(to));
- to[FILENAME_MAX-1] = '\0';
+ strncat(to, from, bufsize-strlen(to));
+ to[bufsize-1] = '\0';
}
static void canvas_declare(t_canvas *x, t_symbol *s, int argc, t_atom *argv)
@@ -1375,7 +1375,8 @@ static void canvas_declare(t_canvas *x, t_symbol *s, int argc, t_atom *argv)
}
else if ((argc > i+1) && !strcmp(flag, "-stdpath"))
{
- canvas_completepath(atom_getsymbolarg(i+1, argc, argv)->s_name, strbuf);
+ canvas_completepath(atom_getsymbolarg(i+1, argc, argv)->s_name,
+ strbuf, MAXPDSTRING);
e->ce_path = namelist_append(e->ce_path, strbuf, 0);
i++;
}
@@ -1386,7 +1387,8 @@ static void canvas_declare(t_canvas *x, t_symbol *s, int argc, t_atom *argv)
}
else if ((argc > i+1) && !strcmp(flag, "-stdlib"))
{
- canvas_completepath(atom_getsymbolarg(i+1, argc, argv)->s_name, strbuf);
+ canvas_completepath(atom_getsymbolarg(i+1, argc, argv)->s_name,
+ strbuf, MAXPDSTRING);
sys_load_lib(0, strbuf);
i++;
}