|
From: | Ken Brown |
Subject: | bug#25875: 26.0.50; Hang logging out of MS-Windows |
Date: | Mon, 27 Feb 2017 15:19:21 -0500 |
User-agent: | Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 |
On 2/27/2017 2:56 PM, Richard Copley wrote:
On 27 February 2017 at 19:46, Richard Copley <rcopley@gmail.com> wrote:On 27 February 2017 at 19:39, Ken Brown <kbrown@cornell.edu> wrote:On 2/27/2017 2:30 PM, Richard Copley wrote:If you want to block or delay a shutdown in recent Windows versions you need to use ShutdownBlockReasonCreate (it's unfortunate, but we lazy programmers proved we couldn't be trusted, collectively, to handle WM_QUERY_ENDSESSION correctly, so the arms race had to be escalated in order to allow users to shut down their computers reliably).In spite of the careless mistake in my patch, you could still test Eli's suggestion of using SendMessageTimeout instead of SendMessage, at least in my_show_window.I can't, not really. Remember, I don't have a recipe. I'll never be able to observe whether it's working or not. (Am I missing something?)Ken, what was the original change intended to guard against? What would people be doing with Emacs that can't simply be abandoned? Did you have a particular example in mind?Bug#23483.That's not a real issue, in my opinion. It's already covered, by autosave.
No, it isn't covered. We don't know that the auto-save files are up-to-date at the time of shutdown.
There are programs like the OP in #23483 described, which interrupt a shutdown to ask the user whether to save. Some of them even call themselves "programmers' text editors" (shudder). Emacs autosave is and always has been a better solution.
You can shoot yourself in the foot by making small but important changes and then immediately shutting down Windows. But you'd almost have to be doing it on purpose.
I think it's reasonable for Emacs to attempt an orderly shutdown when the system is being shutdown, rather than just allowing the system to kill it. You've found a bug in my implementation of this, and I'm happy to try to fix it.
Ken
[Prev in Thread] | Current Thread | [Next in Thread] |