diff lisp/gnus/nntp.el @ 82365:e5a68f18fcb9

Merge from emacs--rel--22 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-851
author Miles Bader <miles@gnu.org>
date Mon, 13 Aug 2007 13:41:28 +0000
parents 24202b793a08
children 1cb31606209f a3c27999decb 424b655804ca
line wrap: on
line diff
--- a/lisp/gnus/nntp.el	Mon Aug 13 11:27:41 2007 +0000
+++ b/lisp/gnus/nntp.el	Mon Aug 13 13:41:28 2007 +0000
@@ -183,6 +183,14 @@
 If the gap between two consecutive articles is bigger than this
 variable, split the XOVER request into two requests.")
 
+(defvoo nntp-xref-number-is-evil nil
+  "*If non-nil, Gnus never trusts article numbers in the Xref header.
+Some news servers, e.g., ones running Diablo, run multiple engines
+having the same articles but article numbers are not kept synchronized
+between them.  If you connect to such a server, set this to a non-nil
+value, and Gnus never uses article numbers (that appear in the Xref
+header and vary by which engine is chosen) to refer to articles.")
+
 (defvoo nntp-prepare-server-hook nil
   "*Hook run before a server is opened.
 If can be used to set up a server remotely, for instance.  Say you
@@ -1632,7 +1640,8 @@
 		    (match-string 1 xref))
 		   (t "")))
 	  (cond
-	   ((and (setq xref (mail-fetch-field "xref"))
+	   ((and (not nntp-xref-number-is-evil)
+		 (setq xref (mail-fetch-field "xref"))
 		 (string-match
 		  (if group
 		      (concat "\\(" (regexp-quote group) "\\):\\([0-9]+\\)")