The symptoms:
- Start memu-cfg.
- Tap the "Menu" key to open the configuration window.
- Select "Exit" from the bottom line of the window.
- The configuration window closes.
- What should then happen is the remaining windows close and the program exit.
- Instead the remaining windows are marked "Not Responding".
- win_delete () is called, and closes the configuration window.
- terminate () is called, and begins to shut down the emulator.
- terminate () calls mon_term () or vid_term (), to close another of the windows.
- Either of these routines call win_delete () to close their corresponding window.
- win_delete () posts the WM_DELETEWINDOW message (a private message) and then blocks waiting for win->heventDeleted to be signalled.
- However the UI thread never receives the message. It appears that the event loop has stopped running.
- So the program is deadlocked, waiting for an event which is never signalled.