diff options
| author | Alan Mackenzie | 2016-02-07 15:06:43 +0000 |
|---|---|---|
| committer | Alan Mackenzie | 2016-02-07 15:06:43 +0000 |
| commit | 7149cc54e7e8bb2266f44221d7f4b4bed70579f3 (patch) | |
| tree | f12a4c10343a2bc360dd7b9c5abb3cb6567903cc | |
| parent | 90c647b97f0e62ca8bc2fc1d27f0170136277fb7 (diff) | |
| download | emacs-7149cc54e7e8bb2266f44221d7f4b4bed70579f3.tar.gz emacs-7149cc54e7e8bb2266f44221d7f4b4bed70579f3.zip | |
On leaving CC Mode, clean up by removing character properties.
* lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
all instances of the text properties/extents category, syntax-table,
c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
| -rw-r--r-- | lisp/progmodes/cc-mode.el | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el index 738870b727a..58aebf8b410 100644 --- a/lisp/progmodes/cc-mode.el +++ b/lisp/progmodes/cc-mode.el | |||
| @@ -141,7 +141,18 @@ | |||
| 141 | ;; derived-mode-ex.el>. | 141 | ;; derived-mode-ex.el>. |
| 142 | 142 | ||
| 143 | (defun c-leave-cc-mode-mode () | 143 | (defun c-leave-cc-mode-mode () |
| 144 | (setq c-buffer-is-cc-mode nil)) | 144 | (when c-buffer-is-cc-mode |
| 145 | (save-restriction | ||
| 146 | (widen) | ||
| 147 | (c-save-buffer-state () | ||
| 148 | (c-clear-char-properties (point-min) (point-max) 'category) | ||
| 149 | (c-clear-char-properties (point-min) (point-max) 'syntax-table) | ||
| 150 | (c-clear-char-properties (point-min) (point-max) 'c-is-sws) | ||
| 151 | (c-clear-char-properties (point-min) (point-max) 'c-in-sws) | ||
| 152 | (c-clear-char-properties (point-min) (point-max) 'c-type) | ||
| 153 | (if (c-major-mode-is 'awk-mode) | ||
| 154 | (c-clear-char-properties (point-min) (point-max) 'c-awk-NL-prop)))) | ||
| 155 | (setq c-buffer-is-cc-mode nil))) | ||
| 145 | 156 | ||
| 146 | (defun c-init-language-vars-for (mode) | 157 | (defun c-init-language-vars-for (mode) |
| 147 | "Initialize the language variables for one of the language modes | 158 | "Initialize the language variables for one of the language modes |