--- freem/src/routine.c 2025/03/09 19:50:47 1.3 +++ freem/src/routine.c 2025/04/13 04:22:43 1.6 @@ -1,5 +1,5 @@ /* - * $Id: routine.c,v 1.3 2025/03/09 19:50:47 snw Exp $ + * $Id: routine.c,v 1.6 2025/04/13 04:22:43 snw Exp $ * Routine buffer management * * @@ -24,6 +24,15 @@ * along with FreeM. If not, see . * * $Log: routine.c,v $ + * Revision 1.6 2025/04/13 04:22:43 snw + * Fix snprintf calls + * + * Revision 1.5 2025/04/09 19:52:02 snw + * Eliminate as many warnings as possible while building with -Wall + * + * Revision 1.4 2025/03/27 03:27:35 snw + * Install init scripts to share/freem/examples/init and fix regression in method dispatch + * * Revision 1.3 2025/03/09 19:50:47 snw * Second phase of REUSE compliance and header reformat * @@ -205,6 +214,12 @@ short rtn_get_superclass(char *rou, char if (ch == ')') after_parens = TRUE; + /* ignore comments in search for superclass */ + if (ch == ';' && after_parens == TRUE) { + found_super = FALSE; + break; + } + if (ch == ':' && after_parens == TRUE) { strcpy (buf, p); found_super = TRUE; @@ -247,8 +262,8 @@ short rtn_get_path(char *rou, char *buf) stcnv_m2c (pth); } - snprintf (buf, PATHLEN, "%s/%s.m", pth, rou); - + snprintf (buf, PATHLEN - 1, "%s/%s.m", pth, rou); + if ((fp = fopen (buf, "r")) != NULL) { (void) fclose (fp); @@ -304,7 +319,6 @@ m_entry *rtn_get_entries(char *rou) char cur_label[255]; int has_args = 0; char *paren_pos; - char *curarg; if (rtn_get_path (rou, rou_path) == FALSE) { return (m_entry *) NULL;