From: Eric Abrahamsen Date: Wed, 3 May 2017 20:10:18 +0000 (-0700) Subject: Avoid circular import X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=ede46affca032ded937eedbdb7ac595ad4b574e0;p=emacs.git Avoid circular import * lisp/gnus/gnus-group.el: Don't require 'gnus-search at top level. Better solution for this? --- diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el index b7b94da0e50..8f7dc92ae29 100644 --- a/lisp/gnus/gnus-group.el +++ b/lisp/gnus/gnus-group.el @@ -32,7 +32,6 @@ (require 'gnus-start) (require 'nnmail) (require 'gnus-spec) -(require 'gnus-search) (require 'gnus-int) (require 'gnus-range) (require 'gnus-win) @@ -42,6 +41,7 @@ (eval-when-compile (require 'mm-url) + (require 'nnselect) (let ((features (cons 'gnus-group features))) (require 'gnus-sum)) (unless (boundp 'gnus-cache-active-hashtb) @@ -54,6 +54,8 @@ (autoload 'gnus-cloud-download-all-data "gnus-cloud") (autoload 'gnus-registry-get-id-key "gnus-registry") +(declare-function 'gnus-group-topic-name "gnus-topic") + (defcustom gnus-no-groups-message "No news is good news" "Message displayed by Gnus when no groups are available." :group 'gnus-start @@ -2811,6 +2813,7 @@ means the search query will be passed raw to the . A non-nil `specs' arg must be an alist with `search-query-spec' and `search-group-spec' keys, and skips all prompting." (interactive "P") + (require 'gnus-search) (let* ((group-spec (or (cdr (assq 'search-group-spec specs)) (if (gnus-server-server-name) @@ -2819,7 +2822,8 @@ non-nil `specs' arg must be an alist with `search-query-spec' and (or gnus-group-marked (if (gnus-group-group-name) (list (gnus-group-group-name)) - (cdr (assoc (gnus-group-topic-name) gnus-topic-alist)))) + (when (gnus-topic-mode-p) + (cdr (assoc (gnus-group-topic-name) gnus-topic-alist))))) gnus-group-server)))) (query-spec (or (cdr (assq 'search-query-spec specs)) diff --git a/lisp/gnus/gnus-search.el b/lisp/gnus/gnus-search.el index 040dca4b202..1407ecd71c6 100644 --- a/lisp/gnus/gnus-search.el +++ b/lisp/gnus/gnus-search.el @@ -63,13 +63,15 @@ (require 'gnus-group) (require 'gnus-sum) -(require 'nnselect) (require 'message) (require 'gnus-util) (require 'eieio) (eval-when-compile (require 'cl-lib)) (autoload 'eieio-build-class-alist "eieio-opt") +(eval-when-compile + (require 'nnselect)) + (defvar gnus-inhibit-demon) (defvar gnus-english-month-names)