Gnus development mailing list
 help / color / mirror / Atom feed
* In gnus-sum.el: Incorrect handling of sparse articles
@ 2004-03-14 13:05 Stefan Wiens
  2004-03-15 10:50 ` Stefan Wiens
  0 siblings, 1 reply; 3+ messages in thread
From: Stefan Wiens @ 2004-03-14 13:05 UTC (permalink / raw)


Hi,

in gnus-sum.el, function gnus-read-header:

(defun gnus-read-header (id &optional header)
  "Read the headers of article ID and enter them into the Gnus system."
[...]
      ;; If this is a sparse article, we have to nix out its
      ;; previous entry in the thread hashtb.
      (when (and header
		 (gnus-summary-article-sparse-p (mail-header-number header)))
	(let* ((parent (gnus-parent-id (mail-header-references header)))
	       (thread (and parent (gnus-id-to-thread parent))))
	  (when thread
	    (delq (assq header thread) thread))))
             ^^^^

That `delq' operation trashes the thread structure in the
gnus-newsgroup-dependencies table. In contrast to the comment, it does
not remove the "previous entry" from the table, but causes the thread
to be split.

Is this (supposed) "expunging" really necessary?
If the sparse header is left in place, gnus-get-newsgroup-headers will
simply replace it.

I believe that weird code causes the long-standing problems with `^',
`A T', `A R' when gnus-build-sparse-threads is set to e. g. 'some.

I am currently testing with the offending code (cited above) commented
out, and everything seems to work fine.


Stefan



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

end of thread, other threads:[~2004-03-15 12:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-03-14 13:05 In gnus-sum.el: Incorrect handling of sparse articles Stefan Wiens
2004-03-15 10:50 ` Stefan Wiens
2004-03-15 12:34   ` Katsumi Yamaoka

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 NNTP newsgroup(s).