2004-07-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
+       * nnheader.el (nnheader-uniquify-message-id): New experimental
+       variable. 
+       (nnheader-nov-read-message-id): Use it.
+
        * spam-report.el (spam-report-gmane): Add interactive.
 
 2004-07-02  Katsumi Yamaoka  <yamaoka@jpl.org>
 
               out)))
      out))
 
+(defvar nnheader-uniquify-message-id nil)
+
 (defmacro nnheader-nov-read-message-id (&optional number)
   `(let ((id (nnheader-nov-field)))
      (if (string-match "^<[^>]+>$" id)
-        id
+        ,(if nnheader-uniquify-message-id
+             `(if (string-match "__[^@]+@" id)
+                  (concat (substring id 0 (match-beginning 0))
+                          (substring id (1- (match-end 0))))
+                id)
+           'id)
        (nnheader-generate-fake-message-id ,number))))
 
 (defun nnheader-parse-nov ()