emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master b26e09e: Fix insertion logic of newly subscribed Gnus groups


From: Eric Abrahamsen
Subject: master b26e09e: Fix insertion logic of newly subscribed Gnus groups
Date: Sun, 24 Jan 2021 13:11:15 -0500 (EST)

branch: master
commit b26e09e0f02b94d72bddfb108a16daffb74139f6
Author: Eric Abrahamsen <eric@ericabrahamsen.net>
Commit: Eric Abrahamsen <eric@ericabrahamsen.net>

    Fix insertion logic of newly subscribed Gnus groups
    
    * lisp/gnus/gnus-start.el (gnus-subscribe-newsgroup): This was a
    misunderstanding of the next/previous argument: no group should ever
    be inserted before "dummy.group".
    (gnus-group-change-level): Make it clearer that PREVIOUS can be
    nil. In fact none of this code would error on a nil value, but it
    _looks_ like nil is unexpected.
---
 lisp/gnus/gnus-start.el | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el
index fbdbf41..cf37a1c 100644
--- a/lisp/gnus/gnus-start.el
+++ b/lisp/gnus/gnus-start.el
@@ -637,7 +637,7 @@ the first newsgroup."
     ;; We subscribe the group by changing its level to `subscribed'.
     (gnus-group-change-level
      newsgroup gnus-level-default-subscribed
-     gnus-level-killed (or next "dummy.group"))
+     gnus-level-killed next)
     (gnus-request-update-group-status newsgroup 'subscribe)
     (gnus-message 5 "Subscribe newsgroup: %s" newsgroup)
     (run-hook-with-args 'gnus-subscribe-newsgroup-functions newsgroup)
@@ -1282,7 +1282,8 @@ string name) to insert this group before."
        (gnus-dribble-enter
         (format "(gnus-group-change-level %S %S %S %S %S)"
                 group level oldlevel
-                (cadr (member previous gnus-group-list))
+                (when previous
+                  (cadr (member previous gnus-group-list)))
                 fromkilled)))
 
       ;; Then we remove the newgroup from any old structures, if needed.
@@ -1341,9 +1342,10 @@ string name) to insert this group before."
          ;; at the head of `gnus-newsrc-alist'.
          (push info (cdr gnus-newsrc-alist))
          (puthash group (list num info) gnus-newsrc-hashtb)
-         (when (stringp previous)
+         (when (and previous (stringp previous))
            (setq previous (gnus-group-entry previous)))
-         (let ((idx (or (seq-position gnus-group-list (caadr previous))
+         (let ((idx (or (and previous
+                             (seq-position gnus-group-list (caadr previous)))
                         (length gnus-group-list))))
            (push group (nthcdr idx gnus-group-list)))
          (gnus-dribble-enter



reply via email to

[Prev in Thread] Current Thread [Next in Thread]