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

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