--- freem/src/routine.c	2025/01/19 02:04:04	1.1
+++ freem/src/routine.c	2025/03/27 03:27:35	1.4
@@ -1,23 +1,11 @@
 /*
- *                            *
- *                           * *
- *                          *   *
- *                     ***************
- *                      * *       * *
- *                       *  MUMPS  *
- *                      * *       * *
- *                     ***************
- *                          *   *
- *                           * *
- *                            *
- *
- *   routine.c
+ *   $Id: routine.c,v 1.4 2025/03/27 03:27:35 snw Exp $
  *    Routine buffer management
  *
  *  
- *   Author: Serena Willis <jpw@coherent-logic.com>
+ *   Author: Serena Willis <snw@coherent-logic.com>
  *    Copyright (C) 1998 MUG Deutschland
- *    Copyright (C) 2023 Coherent Logic Development LLC
+ *    Copyright (C) 2023, 2025 Coherent Logic Development LLC
  *
  *
  *   This file is part of FreeM.
@@ -35,6 +23,16 @@
  *   You should have received a copy of the GNU Affero Public License
  *   along with FreeM.  If not, see <https://www.gnu.org/licenses/>.
  *
+ *   $Log: routine.c,v $
+ *   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
+ *
+ *
+ * SPDX-FileCopyrightText:  (C) 2025 Coherent Logic Development LLC
+ * SPDX-License-Identifier: AGPL-3.0-or-later
  **/
 
 #include <string.h>
@@ -210,6 +208,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;
@@ -253,7 +257,7 @@ short rtn_get_path(char *rou, char *buf)
     }
     
     snprintf (buf, PATHLEN, "%s/%s.m", pth, rou);
-
+    
     if ((fp = fopen (buf, "r")) != NULL) {
         (void) fclose (fp);