Changes committed gnus/lisp (ChangeLog message.el)

"Reiner Steib" <[email protected]> Mon, 22 Dec 2008 22:25:20 +0100
Newsgroups gmane.emacs.gnus.commits
Message-ID <[email protected]>
Modified: ChangeLog message.el

(message-check-news-body-syntax): Fix signature check if there's an
attachment.


Index: ChangeLog
diff -u gnus/lisp/ChangeLog:7.1950 gnus/lisp/ChangeLog:7.1951
--- ChangeLog:7.1950	Mon Dec 22 00:45:14 2008
+++ ChangeLog	Mon Dec 22 22:25:20 2008
@@ -1,3 +1,8 @@
+2008-12-22  Reiner Steib  <[email protected]>
+
+	* message.el (message-check-news-body-syntax): Fix signature check if
+	there's an attachment.
+
 2008-12-21  Katsumi Yamaoka  <[email protected]>
 
 	* mm-util.el: Add comments to the mm- emulating functions.
Index: message.el
diff -u gnus/lisp/message.el:7.277 gnus/lisp/message.el:7.278
--- message.el:7.277	Sat Dec  6 18:30:03 2008
+++ message.el	Mon Dec 22 22:25:20 2008
@@ -2395,6 +2395,8 @@
      (point-max)))
   (goto-char (point-min)))
 
+;; FIXME: clarify diffference: message-narrow-to-head,
+;; message-narrow-to-headers-or-head, message-narrow-to-headers
 (defun message-narrow-to-head ()
   "Narrow the buffer to the head of the message.
 Point is left at the beginning of the narrowed-to region."
@@ -5119,17 +5121,24 @@
 	nil)))
    ;; Check the length of the signature.
    (message-check 'signature
-     (goto-char (point-max))
-     (if (not (re-search-backward message-signature-separator nil t))
-	 t
-       (if (>= (count-lines (1+ (point-at-eol)) (point-max)) 5)
-	   (if (message-gnksa-enable-p 'signature)
-	       (y-or-n-p
-		(format "Signature is excessively long (%d lines).  Really post? "
-			(count-lines (1+ (point-at-eol)) (point-max))))
-	     (message "Denied posting -- Excessive signature.")
-	     nil)
-	 t)))
+     (let (sig-start sig-end)
+       (goto-char (point-max))
+       (if (not (re-search-backward message-signature-separator nil t))
+	   t
+	 (setq sig-start (1+ (point-at-eol)))
+	 (setq sig-end
+	       (if (re-search-forward
+		    "<#/?\\(multipart\\|part\\|external\\|mml\\)" nil t)
+		   (- (point-at-bol) 1)
+		 (point-max)))
+	 (if (>= (count-lines sig-start sig-end) 5)
+	     (if (message-gnksa-enable-p 'signature)
+		 (y-or-n-p
+		  (format "Signature is excessively long (%d lines).  Really post? "
+			  (count-lines sig-start sig-end)))
+	       (message "Denied posting -- Excessive signature.")
+	       nil)
+	   t))))
    ;; Ensure that text follows last quoted portion.
    (message-check 'quoting-style
      (goto-char (point-max))