From: Alan Mackenzie Date: Wed, 20 Jun 2007 08:27:53 +0000 (+0000) Subject: (c-remove-any-local-eval-or-mode-variables): When removing lines, also X-Git-Tag: emacs-pretest-22.1.90~1335 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=5c4c911a172a714bcb745e76860738f25ab38a84;p=emacs.git (c-remove-any-local-eval-or-mode-variables): When removing lines, also remove the \n. Correction of patch of 2007-04-21. --- diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el index 390d49eaea4..dcbcc618dca 100644 --- a/lisp/progmodes/cc-mode.el +++ b/lisp/progmodes/cc-mode.el @@ -790,7 +790,8 @@ compatible with old code; callers should always specify it." ;; If the buffer specifies `mode' or `eval' in its File Local Variable list ;; or on the first line, remove all occurrences. See ;; `c-postprocess-file-styles' for justification. There is no need to save - ;; point here, or even bother too much about the buffer contents. + ;; point here, or even bother too much about the buffer contents. However, + ;; DON'T mess up the kill-ring. ;; ;; Most of the code here is derived from Emacs 21.3's `hack-local-variables' ;; in files.el. @@ -819,8 +820,8 @@ compatible with old code; callers should always specify it." (regexp-quote suffix) "$") nil t) - (beginning-of-line) - (delete-region (point) (progn (end-of-line) (point))))) + (forward-line 0) + (delete-region (point) (progn (forward-line) (point))))) ;; Delete the first line, if we've got one, in case it contains a mode spec. (unless (and lv-point @@ -828,7 +829,8 @@ compatible with old code; callers should always specify it." (forward-line 0) (bobp))) (goto-char (point-min)) - (delete-region (point) (progn (end-of-line) (point)))))) + (unless (eobp) + (delete-region (point) (progn (forward-line) (point))))))) (defun c-postprocess-file-styles () "Function that post processes relevant file local variables in CC Mode.