SCP: Avoid flushing active asynch I/O devices

This commit is contained in:
Mark Pizzolato 2019-03-06 19:08:19 -08:00
parent d7e116f81a
commit c408d0a8fa

7
scp.c
View file

@ -7713,8 +7713,11 @@ for (i = 1; (dptr = sim_devices[i]) != NULL; i++) { /* flush attached files
for (j = 0; j < dptr->numunits; j++) { /* if not buffered in mem */ for (j = 0; j < dptr->numunits; j++) { /* if not buffered in mem */
uptr = dptr->units + j; uptr = dptr->units + j;
if (uptr->flags & UNIT_ATT) { /* attached, */ if (uptr->flags & UNIT_ATT) { /* attached, */
if (uptr->io_flush) /* unit specific flush routine */ if (uptr->io_flush) { /* unit specific flush routine? */
uptr->io_flush (uptr); /* call it */ if (!sim_asynch_enabled || /* and asynch I/O not possible? */
!sim_is_running)
uptr->io_flush (uptr); /* call it */
}
else { else {
if (!(uptr->flags & UNIT_BUF) && /* not buffered, */ if (!(uptr->flags & UNIT_BUF) && /* not buffered, */
(uptr->fileref) && /* real file, */ (uptr->fileref) && /* real file, */