My last comment on this issue (don't want to drag it further): When the OP says; emacs -Q M-x desktop-save-mode C-h v kill-emacs-hook M-x kill-emacs Expected behavior: emacs is killed. Actual behavior: asked "Save desktop? (y or n)"​ I say: emacs -Q (require 'emacs-lock) (emacs-lock-mode 'exit) M-x kill-emacs Expected behavior: emacs is killed ??? Actual behavior: => Emacs cannot exit because buffer "*scratch*" is locked Because I use emacs-lock and I certainly wouldn't expect it to be killed.