diff options
| author | Lars Magne Ingebrigtsen | 2010-09-05 23:20:25 +0000 |
|---|---|---|
| committer | Katsumi Yamaoka | 2010-09-05 23:20:25 +0000 |
| commit | 0c6dfaf849773197aa8299e2b576f79317d747d1 (patch) | |
| tree | d6f3b658a92b8aad8d393e6fc7bdcfa197e153c6 | |
| parent | d65835d93bc0edc28e30e6cbd16c93bb239d9573 (diff) | |
| download | emacs-0c6dfaf849773197aa8299e2b576f79317d747d1.tar.gz emacs-0c6dfaf849773197aa8299e2b576f79317d747d1.zip | |
nnvirtual.el (nnvirtual-create-mapping): Use the active info we already have if we're in a main Gnus `g' run.
| -rw-r--r-- | lisp/gnus/ChangeLog | 3 | ||||
| -rw-r--r-- | lisp/gnus/gnus-start.el | 2 | ||||
| -rw-r--r-- | lisp/gnus/nnvirtual.el | 18 |
3 files changed, 13 insertions, 10 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 792a043ba62..cc489021f64 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,5 +1,8 @@ | |||
| 1 | 2010-09-05 Lars Magne Ingebrigtsen <larsi@gnus.org> | 1 | 2010-09-05 Lars Magne Ingebrigtsen <larsi@gnus.org> |
| 2 | 2 | ||
| 3 | * nnvirtual.el (nnvirtual-create-mapping): Use the active info we | ||
| 4 | already have if we're in a main Gnus `g' run. | ||
| 5 | |||
| 3 | * gnus-start.el (gnus-method-rank): Get info for virtual groups last. | 6 | * gnus-start.el (gnus-method-rank): Get info for virtual groups last. |
| 4 | 7 | ||
| 5 | 2010-09-05 Katsumi Yamaoka <yamaoka@jpl.org> | 8 | 2010-09-05 Katsumi Yamaoka <yamaoka@jpl.org> |
diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el index 9a923ff4d32..c3c7241b3c3 100644 --- a/lisp/gnus/gnus-start.el +++ b/lisp/gnus/gnus-start.el | |||
| @@ -1796,7 +1796,7 @@ If SCAN, request a scan of that group as well." | |||
| 1796 | (gnus-read-active-file-1 method nil)) | 1796 | (gnus-read-active-file-1 method nil)) |
| 1797 | (t | 1797 | (t |
| 1798 | (dolist (info infos) | 1798 | (dolist (info infos) |
| 1799 | (gnus-activate-group (gnus-info-group info) nil nil method)))))) | 1799 | (gnus-activate-group (gnus-info-group info) nil t method)))))) |
| 1800 | 1800 | ||
| 1801 | ;; Create a hash table out of the newsrc alist. The `car's of the | 1801 | ;; Create a hash table out of the newsrc alist. The `car's of the |
| 1802 | ;; alist elements are used as keys. | 1802 | ;; alist elements are used as keys. |
diff --git a/lisp/gnus/nnvirtual.el b/lisp/gnus/nnvirtual.el index 94f43216b38..c94d1837fa9 100644 --- a/lisp/gnus/nnvirtual.el +++ b/lisp/gnus/nnvirtual.el | |||
| @@ -260,13 +260,11 @@ component group will show up when you enter the virtual group.") | |||
| 260 | (nnheader-report 'nnvirtual "No component groups in %s" group)) | 260 | (nnheader-report 'nnvirtual "No component groups in %s" group)) |
| 261 | (t | 261 | (t |
| 262 | (setq nnvirtual-current-group group) | 262 | (setq nnvirtual-current-group group) |
| 263 | (when (or (not dont-check) | 263 | (nnvirtual-create-mapping dont-check) |
| 264 | nnvirtual-always-rescan) | 264 | (when nnvirtual-always-rescan |
| 265 | (nnvirtual-create-mapping) | 265 | (nnvirtual-request-update-info |
| 266 | (when nnvirtual-always-rescan | 266 | (nnvirtual-current-group) |
| 267 | (nnvirtual-request-update-info | 267 | (gnus-get-info (nnvirtual-current-group)))) |
| 268 | (nnvirtual-current-group) | ||
| 269 | (gnus-get-info (nnvirtual-current-group))))) | ||
| 270 | (nnheader-insert "211 %d 1 %d %s\n" | 268 | (nnheader-insert "211 %d 1 %d %s\n" |
| 271 | nnvirtual-mapping-len nnvirtual-mapping-len group)))) | 269 | nnvirtual-mapping-len nnvirtual-mapping-len group)))) |
| 272 | 270 | ||
| @@ -670,7 +668,7 @@ the result." | |||
| 670 | carticles)) | 668 | carticles)) |
| 671 | 669 | ||
| 672 | 670 | ||
| 673 | (defun nnvirtual-create-mapping () | 671 | (defun nnvirtual-create-mapping (dont-check) |
| 674 | "Build the tables necessary to map between component (group, article) to virtual article. | 672 | "Build the tables necessary to map between component (group, article) to virtual article. |
| 675 | Generate the set of read messages and marks for the virtual group | 673 | Generate the set of read messages and marks for the virtual group |
| 676 | based on the marks on the component groups." | 674 | based on the marks on the component groups." |
| @@ -689,7 +687,9 @@ based on the marks on the component groups." | |||
| 689 | ;; Into all-marks we put (g marks). | 687 | ;; Into all-marks we put (g marks). |
| 690 | ;; We also increment cnt and tot here, and compute M (max of sizes). | 688 | ;; We also increment cnt and tot here, and compute M (max of sizes). |
| 691 | (mapc (lambda (g) | 689 | (mapc (lambda (g) |
| 692 | (setq active (gnus-activate-group g) | 690 | (setq active (or (and dont-check |
| 691 | (gnus-active g)) | ||
| 692 | (gnus-activate-group g)) | ||
| 693 | min (car active) | 693 | min (car active) |
| 694 | max (cdr active)) | 694 | max (cdr active)) |
| 695 | (when (and active (>= max min) (not (zerop max))) | 695 | (when (and active (>= max min) (not (zerop max))) |