From: Paul Pogonyshev <pogonyshev@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 56800@debbugs.gnu.org
Subject: bug#56800: Pointless "Warning: desktop file appears to be in use by PID ###."
Date: Wed, 27 Jul 2022 21:22:46 +0200 [thread overview]
Message-ID: <CAG7BparhA+NQXh+dYUJepJt1vifmWM2j=vqiRQtVtgUniTCxAQ@mail.gmail.com> (raw)
In-Reply-To: <831qu6bcwh.fsf@gnu.org>
[-- Attachment #1.1: Type: text/plain, Size: 1406 bytes --]
I meant something like what is in the attached patch. The problem is that
_everything_ got moved to `...-query-functions', including that part that
has nothing to do with querying.
Paul
On Wed, 27 Jul 2022 at 20:58, Eli Zaretskii <eliz@gnu.org> wrote:
> > From: Paul Pogonyshev <pogonyshev@gmail.com>
> > Date: Wed, 27 Jul 2022 19:52:31 +0200
> > Cc: 56800@debbugs.gnu.org
> >
> > Yeah, apparently `kill-emacs' is considered "low-level primitive":
> >
> > Functions to call with no arguments to query about killing Emacs.
> > If any of these functions returns nil, killing Emacs is canceled.
> > ‘save-buffers-kill-emacs’ calls these functions, but ‘kill-emacs’,
> > the low level primitive, does not. See also ‘kill-emacs-hook’.
> >
> > Since I have rebound C-x C-c for my private use (why waste such a nice
> shortcut on something used once
> > in a few days?), I have been using `kill-emacs'. But apparently it's not
> what should be used... Emacs making
> > it easy to silently break things, nothing new.
> >
> > I suggest that `desktop-release-lock' call is still moved from something
> hooked on
> > `kill-emacs-query-functions' to `kill-emacs-hook'. That part is supposed
> to be done unconditionally.
>
> That change was made because the hook can ask questions, which doesn't
> work in a daemon session. So we moved the hook.
>
[-- Attachment #1.2: Type: text/html, Size: 1984 bytes --]
[-- Attachment #2: 0001-Followup-to-5bd04ea307-still-have-M-x-kill-emacs-rel.patch --]
[-- Type: text/x-patch, Size: 1569 bytes --]
From e738c06312ce32f92acd62cdad9d8342451bd734 Mon Sep 17 00:00:00 2001
From: Paul Pogonyshev <pogonyshev@gmail.com>
Date: Wed, 27 Jul 2022 21:20:55 +0200
Subject: [PATCH] Followup to 5bd04ea307: still have `M-x kill-emacs' release
desktop lock
---
lisp/desktop.el | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/lisp/desktop.el b/lisp/desktop.el
index 850d2a86ef..a0931e053e 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -791,7 +791,10 @@ desktop-clear
;; ----------------------------------------------------------------------------
(unless noninteractive
- (add-hook 'kill-emacs-query-functions #'desktop-kill))
+ (add-hook 'kill-emacs-query-functions #'desktop-kill)
+ ;; Certain things should be done even if
+ ;; `kill-emacs-query-functions' are not called.
+ (add-hook 'kill-emacs-hook #'desktop--on-kill))
(defun desktop-kill ()
"If `desktop-save-mode' is non-nil, do what `desktop-save' says to do.
@@ -818,12 +821,15 @@ desktop-kill
(file-error
(unless (yes-or-no-p "Error while saving the desktop. Ignore? ")
(signal (car err) (cdr err))))))
+ (desktop--on-kill)
+ t)
+
+(defun desktop--on-kill ()
;; If we own it, we don't anymore.
(when (eq (emacs-pid) (desktop-owner))
;; Allow exiting Emacs even if we can't delete the desktop file.
(ignore-error 'file-error
- (desktop-release-lock)))
- t)
+ (desktop-release-lock))))
;; ----------------------------------------------------------------------------
(defun desktop-list* (&rest args)
--
2.35.1
next prev parent reply other threads:[~2022-07-27 19:22 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-27 16:25 bug#56800: Pointless "Warning: desktop file appears to be in use by PID ###." Paul Pogonyshev
2022-07-27 16:49 ` Eli Zaretskii
2022-07-27 16:58 ` Paul Pogonyshev
2022-07-27 17:32 ` Eli Zaretskii
2022-07-27 17:52 ` Paul Pogonyshev
2022-07-27 18:58 ` Eli Zaretskii
2022-07-27 19:22 ` Paul Pogonyshev [this message]
2022-07-28 6:17 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAG7BparhA+NQXh+dYUJepJt1vifmWM2j=vqiRQtVtgUniTCxAQ@mail.gmail.com' \
--to=pogonyshev@gmail.com \
--cc=56800@debbugs.gnu.org \
--cc=eliz@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.