Added a more unique naming paradigm for remote console temporary log files to avoid potential collisions when multiple simulators may be running concurrently
This commit is contained in:
parent
242103e79f
commit
cc8c79eb0f
3 changed files with 7 additions and 3 deletions
2
scp.c
2
scp.c
|
@ -3146,6 +3146,8 @@ return SCPE_OK;
|
||||||
|
|
||||||
t_stat set_default_cmd (int32 flg, char *cptr)
|
t_stat set_default_cmd (int32 flg, char *cptr)
|
||||||
{
|
{
|
||||||
|
if (sim_is_running)
|
||||||
|
return SCPE_INVREM;
|
||||||
if ((!cptr) || (*cptr == 0))
|
if ((!cptr) || (*cptr == 0))
|
||||||
return SCPE_2FARG;
|
return SCPE_2FARG;
|
||||||
sim_trim_endspc(cptr);
|
sim_trim_endspc(cptr);
|
||||||
|
|
|
@ -350,7 +350,7 @@ static TMXR sim_rem_con_tmxr = { 0, 0, 0, NULL, NULL, &sim_remote_console };/* r
|
||||||
static uint32 sim_rem_read_timeout = 30; /* seconds before automatic continue */
|
static uint32 sim_rem_read_timeout = 30; /* seconds before automatic continue */
|
||||||
static int32 sim_rem_step_line = -1; /* step in progress on line # */
|
static int32 sim_rem_step_line = -1; /* step in progress on line # */
|
||||||
static t_bool sim_log_temp = FALSE; /* temporary log file active */
|
static t_bool sim_log_temp = FALSE; /* temporary log file active */
|
||||||
#define SIM_REMOTE_TEMP_LOG "sim_remote_console.log"
|
static char sim_rem_con_temp_name[PATH_MAX+1];
|
||||||
|
|
||||||
/* SET REMOTE CONSOLE command */
|
/* SET REMOTE CONSOLE command */
|
||||||
|
|
||||||
|
@ -650,7 +650,8 @@ for (i=(was_stepping ? sim_rem_step_line : 0);
|
||||||
int32 save_quiet = sim_quiet;
|
int32 save_quiet = sim_quiet;
|
||||||
|
|
||||||
sim_quiet = 0;
|
sim_quiet = 0;
|
||||||
sim_set_logon (0, SIM_REMOTE_TEMP_LOG);
|
sprintf (sim_rem_con_temp_name, "sim_remote_console_%d.temporary_log", (int)getpid());
|
||||||
|
sim_set_logon (0, sim_rem_con_temp_name);
|
||||||
sim_quiet = save_quiet;
|
sim_quiet = save_quiet;
|
||||||
sim_log_temp = TRUE;
|
sim_log_temp = TRUE;
|
||||||
}
|
}
|
||||||
|
@ -714,7 +715,7 @@ for (i=(was_stepping ? sim_rem_step_line : 0);
|
||||||
sim_quiet = 0;
|
sim_quiet = 0;
|
||||||
sim_set_logoff (0, NULL);
|
sim_set_logoff (0, NULL);
|
||||||
sim_quiet = save_quiet;
|
sim_quiet = save_quiet;
|
||||||
remove (SIM_REMOTE_TEMP_LOG);
|
remove (sim_rem_con_temp_name);
|
||||||
sim_log_temp = FALSE;
|
sim_log_temp = FALSE;
|
||||||
}
|
}
|
||||||
tmxr_linemsg (lp, "Simulator Running...");
|
tmxr_linemsg (lp, "Simulator Running...");
|
||||||
|
|
|
@ -118,6 +118,7 @@
|
||||||
#undef PACKED /* avoid macro name collision */
|
#undef PACKED /* avoid macro name collision */
|
||||||
#undef ERROR /* avoid macro name collision */
|
#undef ERROR /* avoid macro name collision */
|
||||||
#undef MEM_MAPPED /* avoid macro name collision */
|
#undef MEM_MAPPED /* avoid macro name collision */
|
||||||
|
#include <process.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* avoid macro names collisions */
|
/* avoid macro names collisions */
|
||||||
|
|
Loading…
Add table
Reference in a new issue