]> git.eshelyaron.com Git - emacs.git/commit
Fix an infinite loop in C++ Mode redisplay. This was bug #47191.
authorAlan Mackenzie <acm@muc.de>
Mon, 29 Mar 2021 15:32:40 +0000 (15:32 +0000)
committerAlan Mackenzie <acm@muc.de>
Mon, 29 Mar 2021 15:35:50 +0000 (15:35 +0000)
commit1440dbed544a76ee3b876cb573b5110211e798bb
tree10d9084334363f2024db65d2e4637a8479400227
parent309635af6949ca07da8f6bf8b8e25a1679f7f418
Fix an infinite loop in C++ Mode redisplay.  This was bug #47191.

* lisp/progmodes/cc-defs.el (c-forward-syntactic-ws, c-backward-syntactic-ws):
When point is on the wrong side of a supplied search limit, leave point
unmoved rather than setting it to that limit.

* lisp/progmodes/cc-engine.el (c-forward-name): After scanning a template
argument list (which is not itself subject to a search limit) recalculate the
search limit starting from the end point, since these argument lists can
legitimately be long.  At each of the scanning loops, check point hasn't gone
past the limit.
lisp/progmodes/cc-defs.el
lisp/progmodes/cc-engine.el