]> git.eshelyaron.com Git - emacs.git/commitdiff
(gnus-summary-hide-thread): Fix thread hiding for dummy roots.
authorAlex Bochannek <alex@bochannek.com>
Sat, 15 Jan 2022 09:28:14 +0000 (10:28 +0100)
committerLars Ingebrigtsen <larsi@gnus.org>
Sat, 15 Jan 2022 09:28:14 +0000 (10:28 +0100)
* lisp/gnus/gnus-sum.el (gnus-summary-hide-thread): Make thread
hiding work when using dummy `gnus-summary-make-false-root'
(bug#52923).

lisp/gnus/gnus-sum.el

index d3e476b5d64c8cc1ce518eb6115871e19208e574..6dfdcaf55c7f59922120c7345fc4a2ec12febb41 100644 (file)
@@ -11898,7 +11898,8 @@ Returns nil if no threads were there to be hidden."
   (beginning-of-line)
   (let ((start (point))
        (starteol (line-end-position))
-       (article (gnus-summary-article-number)))
+       (article (unless (gnus-summary-article-intangible-p)
+                   (gnus-summary-article-number))))
     ;; Go forward until either the buffer ends or the subthread ends.
     (when (and (not (eobp))
               (or (zerop (gnus-summary-next-thread 1 t))
@@ -11912,7 +11913,9 @@ Returns nil if no threads were there to be hidden."
              (let ((ol (make-overlay starteol (point) nil t nil)))
                (overlay-put ol 'invisible 'gnus-sum)
                (overlay-put ol 'evaporate t)))
-           (gnus-summary-goto-subject article)
+           (if article
+                (gnus-summary-goto-subject article)
+              (gnus-summary-position-point))
            ;; We moved backward past the start point (invisible thread?)
             (when (> start (point))
               (goto-char starteol)))