|
|
| version 1.7, 2025/03/24 04:05:36 | version 1.11, 2025/04/13 04:22:43 |
|---|---|
| Line 24 | Line 24 |
| * along with FreeM. If not, see <https://www.gnu.org/licenses/>. | * along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
| * | * |
| * $Log$ | * $Log$ |
| * Revision 1.11 2025/04/13 04:22:43 snw | |
| * Fix snprintf calls | |
| * | |
| * Revision 1.10 2025/04/10 01:24:38 snw | |
| * Remove C++ style comments | |
| * | |
| * Revision 1.9 2025/04/03 16:58:34 snw | |
| * Make error message for shm_init error during initialization more friendly | |
| * | |
| * Revision 1.8 2025/03/24 04:44:55 snw | |
| * Don't call ttyname on OS/2 | |
| * | |
| * Revision 1.7 2025/03/24 04:05:36 snw | * Revision 1.7 2025/03/24 04:05:36 snw |
| * Replace crlf with frm_crlf to avoid symbol conflict with readline on OS/2 | * Replace crlf with frm_crlf to avoid symbol conflict with readline on OS/2 |
| * | * |
| Line 176 short init (char *namespace_name) | Line 188 short init (char *namespace_name) |
| retval = shm_init (shm_init_size); | retval = shm_init (shm_init_size); |
| if (retval == SHMS_GET_ERR) { | if (retval == SHMS_GET_ERR) { |
| fprintf (stderr, "init: error initializing shared memory [errno %d]\r\n", errno); | if (errno != 13) { |
| fprintf (stderr, "init: error initializing shared memory [errno %d]\r\n", errno); | |
| } | |
| else { | |
| fprintf (stderr, "init: error attaching to environment -- does your user belong to the group that owns environment '%s'?\r\n", shm_env); | |
| } | |
| if (run_daemon == FALSE) { | |
| set_io (UNIX); | |
| } | |
| exit (1); | exit (1); |
| } | } |
| Line 227 void init_process (void) | Line 247 void init_process (void) |
| { | { |
| pid = getpid (); /* get $J = process ID */ | pid = getpid (); /* get $J = process ID */ |
| umask (0); /* protection bits mask to full rights */ | umask (0); /* protection bits mask to full rights */ |
| snprintf (fp_conversion, 9, "%%.%df\201", DBL_DIG); | snprintf (fp_conversion, sizeof (fp_conversion) - 1, "%%.%df\201", DBL_DIG); |
| if (fp_mode) { | if (fp_mode) { |
| zprecise = DBL_DIG; | zprecise = DBL_DIG; |
| Line 436 void init_readline (void) | Line 456 void init_readline (void) |
| pw_buf = (char *) calloc (strlen(pw->pw_dir) + 1, sizeof(char)); | pw_buf = (char *) calloc (strlen(pw->pw_dir) + 1, sizeof(char)); |
| strcpy (pw_buf, pw->pw_dir); | strcpy (pw_buf, pw->pw_dir); |
| snprintf (history_file, 256, "%s/.freem_history", pw_buf); | snprintf (history_file, sizeof (history_file) - 1, "%s/.freem_history", pw_buf); |
| free (pw_buf); | free (pw_buf); |
| Line 529 void init_mwapi (void) | Line 549 void init_mwapi (void) |
| gtk_init (0, NULL); | gtk_init (0, NULL); |
| } | } |
| */ | */ |
| //TODO: init Motif/libXt | /* TODO: init Motif/libXt */ |
| } | } |
| #else | #else |
| void init_mwapi (void) | void init_mwapi (void) |
| Line 556 void init_io (void) | Line 576 void init_io (void) |
| set_io (MUMPS); /* set i/o parameters */ | set_io (MUMPS); /* set i/o parameters */ |
| #if !defined(__AMIGA) | #if !defined(__AMIGA) && !defined(__OS2__) |
| if (ttyname (HOME)) { /* for $IO of HOME */ | if (ttyname (HOME)) { /* for $IO of HOME */ |
| strcpy (dev[HOME], ttyname (HOME)); | strcpy (dev[HOME], ttyname (HOME)); |
| dev[HOME][strlen (dev[HOME])] = EOL; | dev[HOME][strlen (dev[HOME])] = EOL; |
| Line 565 void init_io (void) | Line 585 void init_io (void) |
| dev[HOME][0] = EOL; /* ...we are in a pipe */ | dev[HOME][0] = EOL; /* ...we are in a pipe */ |
| } | } |
| #else | #else |
| #if defined(__AMIGA) | |
| strcpy (dev[HOME], "CONSOLE:"); | strcpy (dev[HOME], "CONSOLE:"); |
| #else | |
| #if defined(__OS2__) | |
| strcpy (dev[HOME], "CON:"); | |
| #endif | |
| #endif | |
| #endif | #endif |
| /* init function keys */ | /* init function keys */ |
| Line 638 void cleanup (void) | Line 664 void cleanup (void) |
| int ch; | int ch; |
| /* remove this job's entry from ^$JOB SSVN */ | /* remove this job's entry from ^$JOB SSVN */ |
| snprintf (k_buf, 255, "^$JOB\202%d\201", pid); | snprintf (k_buf, sizeof (k_buf) - 1, "^$JOB\202%d\201", pid); |
| symtab_shm (kill_sym, k_buf, " \201"); | symtab_shm (kill_sym, k_buf, " \201"); |
| reset_terminal (); | reset_terminal (); |