On 10/24/2022 8:10 PM, Jim Porter wrote: > On 10/21/2022 11:57 PM, Eli Zaretskii wrote: >>> Date: Fri, 21 Oct 2022 20:46:47 -0700 >>> Cc: larsi@gnus.org, 51993@debbugs.gnu.org, gregory@heytings.org >>> From: Jim Porter >>> >>> The issue in the quote above is that if you enable automatic server >>> shutdown in Emacs 29, it changes the behavior of exiting an emacsclient >>> even when it wouldn't stop the server (i.e. when there are other active >>> clients). That's surprising to me, I wouldn't expect that setting to >>> affect cases when it decides *not* to kill the Emacs daemon. >> >> Sounds like a bug to me, because it contradicts what the doc string >> says. > > That's how it seems to me too. ... Ok, after quite a delay, here's a patch for this. Previously, the function 'server-stop-automatically--handle-delete-frame' responded to both 'C-x C-c' ('save-buffers-kill-terminal') and 'delete-frame', which made it more complex. I've moved the 'C-x C-c' case into 'server-save-buffers-kill-terminal', which simplifies 'server-stop-automatically--handle-delete-frame'. The updated 'server-save-buffers-kill-terminal' should now make sure that the new stop-automatically behavior only happens when there are no other client processes (or nowait frames). I've also attached a version of the diff excluding the whitespace changes to make reviewing the code easier.