diff options
author | Alan Mackenzie <acm@muc.de> | 2010-01-19 22:10:19 +0000 |
---|---|---|
committer | Alan Mackenzie <acm@muc.de> | 2010-01-19 22:10:19 +0000 |
commit | 8ee04f3a4f72eb41f2c0ead6287185c829654b43 (patch) | |
tree | a07a29c1989fdf8813f13c17f7487cb3ffc58b45 /lisp/progmodes/cc-defs.el | |
parent | bc4b76f12a306f8fbc892e6f1e00733f3ef1981f (diff) | |
download | emacs-8ee04f3a4f72eb41f2c0ead6287185c829654b43.tar.gz emacs-8ee04f3a4f72eb41f2c0ead6287185c829654b43.tar.bz2 emacs-8ee04f3a4f72eb41f2c0ead6287185c829654b43.zip |
Fix bug#5395: typing '#' in an empty C buffer throws "args out of range".
* progmodes/cc-defs.el: (c-set-cpp-delimiters, c-clear-cpp-delimiters):
Check for EOB playing the role of delimiter.
Diffstat (limited to 'lisp/progmodes/cc-defs.el')
-rw-r--r-- | lisp/progmodes/cc-defs.el | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lisp/progmodes/cc-defs.el b/lisp/progmodes/cc-defs.el index de0cd896b8e..bb91dee6ce8 100644 --- a/lisp/progmodes/cc-defs.el +++ b/lisp/progmodes/cc-defs.el @@ -1217,12 +1217,14 @@ been put there by c-put-char-property. POINT remains unchanged." ;; This macro does a hidden buffer change. `(progn (c-put-char-property ,beg 'category 'c-cpp-delimiter) - (c-put-char-property ,end 'category 'c-cpp-delimiter))) + (if (< ,end (point-max)) + (c-put-char-property ,end 'category 'c-cpp-delimiter)))) (defmacro c-clear-cpp-delimiters (beg end) ;; This macro does a hidden buffer change. `(progn (c-clear-char-property ,beg 'category) - (c-clear-char-property ,end 'category))) + (if (< ,end (point-max)) + (c-clear-char-property ,end 'category)))) (defsubst c-comment-out-cpps () ;; Render all preprocessor constructs syntactically commented out. |