Eddie indefinitely inhibits/halts Windows when the user tries to restart, log out or shut down. (If Windows is restarting automatically not initiated by user, it will forcefully kill Eddie eventually, but not if the user initiated the restart).
On the restarting screen, the "restart anyway" has to be clicked to proceed every time or Windows waits indefinitely. It can be seen that Eddie is the process "preventing you from restarting" but I cannot take a screenshot of it.
The reason seems to be that Eddie treats these events the same way as when a user normally clicks "Exit" on Eddie - it creates a popup dialog and refuses to end:
Expectation: Eddie should not inhibit the system when the user is doing a restart/logout/shutdown; it should exit quietly like other programs. There is no benefit to the current behavior. The only case programs should inhibit the system this way is when there is something unsaved/uncommitted the user might want to keep (like an open text editor); that is clearly not the case here.
There should be various ways to detect when the system is in process of a restart/logout/shutdown (in contrast to the user clicking "Exit" or clicking the "X" on the main window):
SessionEnding event (.NET)
WM_QUERYENDSESSION message