unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#13756: Selecting deleted gnus-summary-buffer
@ 2013-02-18 21:50 Juri Linkov
  2013-07-06 17:03 ` Lars Ingebrigtsen
  0 siblings, 1 reply; 3+ messages in thread
From: Juri Linkov @ 2013-02-18 21:50 UTC (permalink / raw)
  To: 13756

Package: emacs,gnus
Version: 24.3.50

Often selecting a Gnus article from the Gnus summary fails with the error:

Debugger entered--Lisp error: (error "Selecting deleted buffer")
  gnus-article-get-xrefs()
  run-hooks(gnus-tmp-internal-hook)
  apply(run-hooks gnus-tmp-internal-hook)
  gnus-run-hooks(gnus-tmp-internal-hook)
  gnus-article-prepare-display()
  gnus-article-prepare(57082 nil)
  gnus-summary-display-article(57082)
  gnus-summary-next-article(t nil)
  gnus-summary-next-unread-article()
  call-interactively(gnus-summary-next-unread-article nil nil)

because in `gnus-article-prepare' the line

	(set-buffer gnus-article-buffer)

invalidates the previously live current buffer `gnus-summary-buffer'
to #<killed buffer>.

I've tracked this problem down to revno#111328
that has the following relevant diff parts:

+++ lisp/gnus/ChangeLog 2012-12-25 22:12:59 +0000
+
+       * gnus-art.el (gnus-article-setup-buffer): Make sure that the article
+       buffer always points to the right summary buffer.
+
=== modified file 'lisp/gnus/gnus-art.el'
--- lisp/gnus/gnus-art.el       2012-12-12 22:22:31 +0000
+++ lisp/gnus/gnus-art.el       2012-12-25 22:12:59 +0000
@@ -4539,18 +4539,17 @@ (defun gnus-article-setup-buffer ()
            (gnus-article-mode))
          (setq truncate-lines gnus-article-truncate-lines)
          (current-buffer))
+      (let ((summary gnus-summary-buffer))
       (with-current-buffer (gnus-get-buffer-create name)
        (gnus-article-mode)
        (setq truncate-lines gnus-article-truncate-lines)
-       (make-local-variable 'gnus-summary-buffer)
-       (setq gnus-summary-buffer
-             (gnus-summary-buffer-name gnus-newsgroup-name))
+       (set (make-local-variable 'gnus-summary-buffer) summary)
        (gnus-summary-set-local-parameters gnus-newsgroup-name)
        (when article-lapsed-timer
          (gnus-stop-date-timer))
        (when gnus-article-update-date-headers
          (gnus-start-date-timer gnus-article-update-date-headers))
-       (current-buffer)))))
+       (current-buffer))))))

that uses a pointer to the buffer instead of the buffer name.

Reverting this commit removes the above error.
I don't know what bug this commit was intended to fix,
so I can't suggest how to resolve this problem.





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#13756: Selecting deleted gnus-summary-buffer
  2013-02-18 21:50 bug#13756: Selecting deleted gnus-summary-buffer Juri Linkov
@ 2013-07-06 17:03 ` Lars Ingebrigtsen
  2014-01-30 23:55   ` Lars Ingebrigtsen
  0 siblings, 1 reply; 3+ messages in thread
From: Lars Ingebrigtsen @ 2013-07-06 17:03 UTC (permalink / raw)
  To: Juri Linkov; +Cc: 13756

Juri Linkov <juri@jurta.org> writes:

> Often selecting a Gnus article from the Gnus summary fails with the error:
>
> Debugger entered--Lisp error: (error "Selecting deleted buffer")
>   gnus-article-get-xrefs()
>   run-hooks(gnus-tmp-internal-hook)

Hm...  That's an odd calling sequence, but I see that I probably wrote
it myself.  I don't really know why, though.  :-)

Anyway:

> because in `gnus-article-prepare' the line
>
> 	(set-buffer gnus-article-buffer)
>
> invalidates the previously live current buffer `gnus-summary-buffer'
> to #<killed buffer>.

Hm.  I'm unable to reproduce this.  `gnus-article-get-xrefs' is called
with a live `gnus-summary-buffer' when I try it.

Do you know what triggers this bug?

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#13756: Selecting deleted gnus-summary-buffer
  2013-07-06 17:03 ` Lars Ingebrigtsen
@ 2014-01-30 23:55   ` Lars Ingebrigtsen
  0 siblings, 0 replies; 3+ messages in thread
From: Lars Ingebrigtsen @ 2014-01-30 23:55 UTC (permalink / raw)
  To: Juri Linkov; +Cc: 13756

Lars Ingebrigtsen <larsi@gnus.org> writes:

>> because in `gnus-article-prepare' the line
>>
>> 	(set-buffer gnus-article-buffer)
>>
>> invalidates the previously live current buffer `gnus-summary-buffer'
>> to #<killed buffer>.
>
> Hm.  I'm unable to reproduce this.  `gnus-article-get-xrefs' is called
> with a live `gnus-summary-buffer' when I try it.
>
> Do you know what triggers this bug?

I now understand what's happening.  If `gnus-single-article-buffer' is
set, then the summary buffer (in the article buffer) gets set to the
wrong thing.  I'll fix it...

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-01-30 23:55 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-02-18 21:50 bug#13756: Selecting deleted gnus-summary-buffer Juri Linkov
2013-07-06 17:03 ` Lars Ingebrigtsen
2014-01-30 23:55   ` Lars Ingebrigtsen

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).