unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
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


  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

  List information: https://www.gnu.org/software/emacs/

* 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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).