unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Katsumi Yamaoka <yamaoka@jpl.org>
To: Eric Abrahamsen <eric@ericabrahamsen.net>
Cc: Andy Moreton <andrewjmoreton@gmail.com>, 35219@debbugs.gnu.org
Subject: bug#35219: 27.0.50; Problems with nnimap groups with non-ASCII characters
Date: Fri, 19 Apr 2019 14:48:38 +0900	[thread overview]
Message-ID: <b4m36mer1e1.fsf@jpl.org> (raw)
In-Reply-To: <m3sguqatmx.fsf@gnus.org>

On Thu, 18 Apr 2019 16:53:54 -0700, Eric Abrahamsen wrote:
>>> Andy Moreton <andrewjmoreton@gmail.com> writes:
>>>> I see a similar symptom, but with a different recipe:
>>>>  - start Gnus
>>>>  - open the server buffer, select a server, and subscribe to a new group
>>>>  - quit the server buffer
>>>>  - in the group buffer, kill the group line for the new group
>>>> At this point, emacs is busy but unresponsive. Breaking in with ^G
>>>> results in emacs becoming responsive agin, but all of the group lines
>>>> disappear from the group buffer.
[...]
>> After more testing, it seems that this wrong display depends on using
>> topics in the group buffer. If I toggle topics off ('t' in the group
>> buffer) then killing the newly added group appears to work normally.
[...]

I found what is happening then, too.  At first such a new group
is registered in only `gnus-newsrc-hashtb', not `gnus-active-hashtb'.
When trying to kill the group in the group buffer of the topic mode,
during the course of the procedures `gnus-group-change-level'
deletes the group from `gnus-newsrc-hashtb', even so
`gnus-group-goto-group' tries to go to the group, and fails.

I also realized what `gnus-group-goto-group' does when the group
is not found in the hash tables is nonsense.

[...]
> Yamaoka-san, this would revert some of your changes.

Not revert but great improve.  What is especially great is that
making `g-g-g-g' needless to refer to the hash tables:

> -    (let ((start (point))
> -	  (active (and (or
> -                        ;; Some kind of group may be only there.
> -                        (gnus-active group)
> -                        ;; All groups (but with exception) are there.
> -                        (gnus-group-entry group))
> -		       group)))
> +    (let ((start (point)))
[...]
>  		      (gnus-text-property-search
> -		       'gnus-group active 'forward 'goto))
> +		       'gnus-group group 'forward 'goto))

Yes, the existing group should be found but nonexistent one
should not be found.

> With the attached change, Gnus' original behavior is restored for me,
> including the fact that `gnus-group-jump-to-group' will jump to
> non-existent groups (creating them in the process).

Wow!  I don't remember it but Gnus in Emacs 26.2 surely does so.
It is probably the right behavior of `gnus-group-jump-to-group':

2011-01-31  Lars Ingebrigtsen  <larsi at gnus.org>

	* gnus-group.el (gnus-group-jump-to-group): Allow jumping to groups
	that Gnus doesn't know exists again.

2011-01-28  Julien Danjou  <julien at danjou.info>

	* gnus-group.el (gnus-group-jump-to-group): Set must match to t.


	Probably Lars or someone made it allow non-existent
	group unconditionally at some time.

	In No Gnus, (gnus-read-active-file-p) was used as the
	must-match flag.


2004-05-21  Lars Magne Ingebrigtsen  <larsi at gnus.org>

	* gnus-group.el (gnus-group-jump-to-group): Don't prompt for
	non-active groups.


Anyway there is no other problem so far, so please push the patch.

Thanks.
Regards,





  reply	other threads:[~2019-04-19  5:48 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-10 13:15 bug#35219: 27.0.50; Problems with nnimap groups with non-ASCII characters Lars Ingebrigtsen
2019-04-10 17:14 ` Eric Abrahamsen
2019-04-15  2:19   ` Eric Abrahamsen
2019-04-18 15:55     ` Eric Abrahamsen
2019-04-18 17:43       ` Andy Moreton
2019-04-18 19:48         ` Eric Abrahamsen
2019-04-18 20:42           ` Andy Moreton
2019-04-18 23:53             ` Eric Abrahamsen
2019-04-19  5:48               ` Katsumi Yamaoka [this message]
2019-04-19 16:14                 ` Eric Abrahamsen
2019-04-19 12:43               ` Andy Moreton

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=b4m36mer1e1.fsf@jpl.org \
    --to=yamaoka@jpl.org \
    --cc=35219@debbugs.gnu.org \
    --cc=andrewjmoreton@gmail.com \
    --cc=eric@ericabrahamsen.net \
    /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).