emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Eric Abrahamsen <eric@ericabrahamsen.net>
To: emacs-orgmode@gnu.org
Subject: Re: [BUG] Issues in ol-gnus when storing links in nnvirtual and nnselect articles [9.7-pre (release_9.6.7-570-gd6f3ae.dirty @ /home/jschmidt/work/org-mode/lisp/)]
Date: Sat, 22 Jul 2023 14:09:07 -0700	[thread overview]
Message-ID: <87edkzveks.fsf@ericabrahamsen.net> (raw)
In-Reply-To: 1b9fbe38-0572-7861-e433-8f26457302bb@vodafonemail.de

Jens Schmidt <jschmidt4gnu@vodafonemail.de> writes:

> On 2023-07-22  15:48, Ihor Radchenko wrote:
>
>> I am not familiar with Gnus, but looking at the code, may it be that
>> a Gnus article is open when Gnus summary buffer is not?
>
> Theoretically yes, if you actively and malignantly kill the summary
> buffer, for example.  In practice and through Gnus key bindings, this
> should not happen.  IOW, Gnus stops behaving reasonably as well if you
> kill the summary buffer other than through Gnus key bindings
> ("Selecting deleted buffer", etc.).
>
> If you check function `gnus-summary-work-articles' from gnus-sum.el, the
> main work horse for article processing and also good for calling in
> article buffers, you will note (focusing on the default case) the same
> paradigm
>
>   (with-current-buffer gnus-summary-buffer
>     (cond
>      [...]
>      (t
>       ;; Just return the current article.
>       (list (gnus-summary-article-number))))))
>
> As a last resort we could also try to drag in Andrew Cohen as a
> reviewer, he has been helpful already with one or two of my Gnus bugs.

We should definitely be using the paradigm above (using the
gnus-summary-buffer as the current buffer). The article number fetching
only works by accident in the article buffer, and other stuff (like
finding the original nnselect group name) won't work at all.

Later in the function we've got this:

(save-window-excursion
  (save-excursion
    (gnus-article-show-summary)
    (gnus-summary-article-header)))

If we're currently in article-mode. The call to
`gnus-article-show-summary' would protect against the case where the
summary buffer has been killed in the meantime, but I agree that's kind
of a pathological case.

Probably it would be enough to wrap the whole containing `let*' in a
(with-current-buffer gnus-summary-buffer ...). If we're already in the
summary buffer, no harm done.

Eric



  reply	other threads:[~2023-07-22 21:10 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-22  9:06 [BUG] Issues in ol-gnus when storing links in nnvirtual and nnselect articles [9.7-pre (release_9.6.7-570-gd6f3ae.dirty @ /home/jschmidt/work/org-mode/lisp/)] Jens Schmidt
2023-07-22 13:48 ` Ihor Radchenko
2023-07-22 15:37   ` Jens Schmidt
2023-07-22 21:09     ` Eric Abrahamsen [this message]
2023-07-23  6:45       ` Ihor Radchenko
2023-07-24  1:55         ` Eric Abrahamsen
2023-07-24  7:17           ` Ihor Radchenko
2023-07-24 20:23     ` Jens Schmidt
2023-07-25  7:16       ` Ihor Radchenko
2023-07-27 16:10       ` Eric Abrahamsen
2023-07-23 10:26 ` Max Nikulin
2023-07-23 14:13   ` Jens Schmidt
2023-07-24 14:54     ` Max Nikulin
2023-07-26 16:04 ` Ihor Radchenko
2023-07-26 19:36   ` Jens Schmidt
2023-07-27  7:56     ` Ihor Radchenko
2023-07-28 11:27       ` Bastien Guerry
2023-07-29  7:04         ` Ihor Radchenko
2023-07-30 15:57           ` Jens Schmidt
2023-07-30 16:35             ` Ihor Radchenko

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.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87edkzveks.fsf@ericabrahamsen.net \
    --to=eric@ericabrahamsen.net \
    --cc=emacs-orgmode@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/org-mode.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).