unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Pankaj Jangid <pankaj@codeisgreat.org>
To: 45269@debbugs.gnu.org
Subject: bug#45269: Incorrect Gnus summary line number after toggle-thread and limiting
Date: Wed, 16 Dec 2020 18:54:55 +0530	[thread overview]
Message-ID: <87v9d1289k.fsf@codeisgreat.org> (raw)

[-- Attachment #1: Type: text/plain, Size: 1347 bytes --]

Tags: patch

Set summary line format to display line number. Something like this,

(setq gnus-summary-line-format
      "%4P %U%R%z %-16&user-date; %(%[%4L:%*%-23,23f%]%) %B%s\n"

This will display line number in the first column.

Start Gnus and enter any group with few emails in it (better if there
are threads in it).

Invoke T-T (gnus-summary-toggle-threads) or any of the limiting
functions like /-/ (gnus-summary-limit-to-subject). These calls invoke
gnus-summary-prepare function.

And every time gnus-summary-prepare is invoked it starts increamenting
line-number from the previous max.

The result is that, on each refresh the line number keep on
increasing. And showing incorrect values.

I have moved these two lines from gnus-summary-read-group-1 to
gnus-summary-prepare function.

    (when (boundp 'gnus-pick-line-number)
      (setq gnus-pick-line-number 0))

This fixes the issue. Unless there are side-effects that I am unaware
of.

In GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5, cairo version 1.16.0)
 of 2020-12-16 built on lt
Repository revision: fda9a2bbfd3adcce046c03bee72ba848c61a3e29
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12004000
System Description: Debian GNU/Linux 10 (buster)

Configured using:
 'configure --prefix=/home/pankaj/.local'


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: gnus-summary-line-number-fix.patch --]
[-- Type: text/patch, Size: 875 bytes --]

diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index 9488b32487..16152e252a 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -4100,8 +4100,6 @@ gnus-summary-read-group-1
      ;; The group was successfully selected.
      (t
       (gnus-set-global-variables)
-      (when (boundp 'gnus-pick-line-number)
-	(setq gnus-pick-line-number 0))
       (when (boundp 'spam-install-hooks)
 	(spam-initialize))
       ;; Save the active value in effect when the group was entered.
@@ -4226,6 +4224,8 @@ gnus-summary-prepare
 	  gnus-newsgroup-data-reverse nil)
     (gnus-run-hooks 'gnus-summary-generate-hook)
     ;; Generate the buffer, either with threads or without.
+    (when (boundp 'gnus-pick-line-number)
+      (setq gnus-pick-line-number 0))
     (when gnus-newsgroup-headers
       (gnus-summary-prepare-threads
        (if gnus-show-threads

             reply	other threads:[~2020-12-16 13:24 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-16 13:24 Pankaj Jangid [this message]
2020-12-16 22:34 ` bug#45269: Incorrect Gnus summary line number after toggle-thread and limiting Lars Ingebrigtsen

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=87v9d1289k.fsf@codeisgreat.org \
    --to=pankaj@codeisgreat.org \
    --cc=45269@debbugs.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).