From 8e38a1a9bd8d2d793b3f315ced0b338b83a5e86e Mon Sep 17 00:00:00 2001 From: Miles Bader Date: Mon, 3 Nov 2008 06:05:36 +0000 Subject: [PATCH] Merge from gnus--devo--0 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-1460 --- lisp/gnus/ChangeLog | 11 +++++++++++ lisp/gnus/ietf-drums.el | 13 +++++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 66fafa90ad6..21132ebb568 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,14 @@ +2008-10-31 Teodor Zlatanov + + * ietf-drums.el (ietf-drums-remove-comments): Localize second + condition-case to only the forward-sexp call. + +2008-10-31 Teodor Zlatanov + + * ietf-drums.el (ietf-drums-remove-comments): Fix bug with single + quotes contained. Make it more robust regardless by an extra + condition-case wrapper. + 2008-10-03 Katsumi Yamaoka * nnml.el (nnml-request-expire-articles): Check if the function set to diff --git a/lisp/gnus/ietf-drums.el b/lisp/gnus/ietf-drums.el index 4f2e9afe56d..78567f622df 100644 --- a/lisp/gnus/ietf-drums.el +++ b/lisp/gnus/ietf-drums.el @@ -123,9 +123,18 @@ backslash and doublequote.") (setq c (char-after)) (cond ((eq c ?\") - (forward-sexp 1)) + (condition-case err + (forward-sexp 1) + (error (goto-char (point-max))))) ((eq c ?\() - (delete-region (point) (progn (forward-sexp 1) (point)))) + (delete-region + (point) + (condition-case nil + (with-syntax-table (copy-syntax-table ietf-drums-syntax-table) + (modify-syntax-entry ?\" "w") + (forward-sexp 1) + (point)) + (error (point-max))))) (t (forward-char 1)))) (buffer-string)))) -- 2.39.2