--- freem/src/mumps.c	2025/03/22 21:44:32	1.5
+++ freem/src/mumps.c	2025/03/24 16:07:55	1.7
@@ -1,5 +1,5 @@
 /*
- *   $Id: mumps.c,v 1.5 2025/03/22 21:44:32 snw Exp $
+ *   $Id: mumps.c,v 1.7 2025/03/24 16:07:55 snw Exp $
  *    main module of freem
  *
  *  
@@ -24,6 +24,12 @@
  *   along with FreeM.  If not, see <https://www.gnu.org/licenses/>.
  *
  *   $Log: mumps.c,v $
+ *   Revision 1.7  2025/03/24 16:07:55  snw
+ *   Force daemon into foreground on OS/2
+ *
+ *   Revision 1.6  2025/03/24 16:04:49  snw
+ *   Force daemon into foreground on OS/2
+ *
  *   Revision 1.5  2025/03/22 21:44:32  snw
  *   Make the startup messages fewer and add environment name to direct-mode prompt
  *
@@ -441,6 +447,14 @@ int main (int argc, char **argv, char **
         }
     }
 #endif
+
+#if defined(__OS2__)
+    if (run_daemon == TRUE && nofork == FALSE) {
+        printf ("freem:  running on OS/2; forcing daemon into foreground\r\n");
+        nofork = TRUE;
+    }
+#endif
+    
     snprintf (config_file, 4096, "%s/freem/%s/freem.conf", SYSCONFDIR, shm_env);
     
     if (run_daemon == TRUE && geteuid() == 0) {
@@ -765,6 +779,10 @@ int main (int argc, char **argv, char **
         
         fprintf (stderr, "Coherent Logic Development FreeM version %s\r\n", verstr);
         fprintf (stderr, "freem:  shared memory for environment %s initialized (%ld bytes of shared memory @ '%p')\r\nfreem:  system ready\r\n", shm_env, (long) shm_init_size, shm_config->dta);
+
+#if defined(__OS2__)
+        fprintf (stderr, "freem:  running on OS/2; daemon was forced into the foreground if not explicitly run with --nofork\r\n");
+#endif        
         
         for (;;) {