From ec970b8b8ef1ab0e5f4799b71ee0ba97193eb7a2 Mon Sep 17 00:00:00 2001 From: Ivica Ico Bukvic <ico@vt.edu> Date: Sun, 29 Dec 2013 11:15:37 -0500 Subject: [PATCH] *Ported open_via_helppath from pd to fix inability to open help files when starting pd-l2ork from the doc/5.reference folder. --- pd/src/s_path.c | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/pd/src/s_path.c b/pd/src/s_path.c index baa78c786..8feef4e79 100644 --- a/pd/src/s_path.c +++ b/pd/src/s_path.c @@ -467,40 +467,35 @@ int open_via_path(const char *dir, const char *name, const char *ext, search attempts. */ void open_via_helppath(const char *name, const char *dir) { - char realname[FILENAME_MAX], propername[FILENAME_MAX], dirbuf[FILENAME_MAX]; - char *basename; + char realname[MAXPDSTRING], dirbuf[MAXPDSTRING], *basename; /* make up a silly "dir" if none is supplied */ const char *usedir = (*dir ? dir : "./"); int fd; /* 1. "objectname-help.pd" */ - strncpy(realname, name, FILENAME_MAX-10); - realname[FILENAME_MAX-10] = 0; + strncpy(realname, name, MAXPDSTRING-10); + realname[MAXPDSTRING-10] = 0; if (strlen(realname) > 3 && !strcmp(realname+strlen(realname)-3, ".pd")) realname[strlen(realname)-3] = 0; strcat(realname, "-help.pd"); - strncpy(propername, realname, FILENAME_MAX); - if ((fd = do_open_via_path(dir, realname, "", dirbuf, &basename, - FILENAME_MAX, 0, sys_helppath)) >= 0) + if ((fd = do_open_via_path(usedir, realname, "", dirbuf, &basename, + MAXPDSTRING, 0, sys_helppath)) >= 0) goto gotone; /* 2. "help-objectname.pd" */ strcpy(realname, "help-"); - strncat(realname, name, FILENAME_MAX-10); - realname[FILENAME_MAX-1] = 0; - if ((fd = do_open_via_path(dir, realname, "", dirbuf, &basename, - FILENAME_MAX, 0, sys_helppath)) >= 0) - goto gotone_deprecated; + strncat(realname, name, MAXPDSTRING-10); + realname[MAXPDSTRING-1] = 0; + if ((fd = do_open_via_path(usedir, realname, "", dirbuf, &basename, + MAXPDSTRING, 0, sys_helppath)) >= 0) + goto gotone; /* 3. "objectname.pd" */ - if ((fd = do_open_via_path(dir, name, "", dirbuf, &basename, - FILENAME_MAX, 0, sys_helppath)) >= 0) - goto gotone_deprecated; + if ((fd = do_open_via_path(usedir, name, "", dirbuf, &basename, + MAXPDSTRING, 0, sys_helppath)) >= 0) + goto gotone; post("sorry, couldn't find help patch for \"%s\"", name); return; -gotone_deprecated: - error("'%s' is a deprecated name format for a help patch.\n\tPlease rename to '%s'!", - basename, propername); gotone: close (fd); glob_evalfile(0, gensym((char*)basename), gensym(dirbuf)); -- GitLab