comparison lisp/emacs-lisp/regexp-opt.el @ 24810:d2cb43703bfb

(regexp-opt-group): Avoid infinite recursion on bogus input.
author Karl Heuer <kwzh@gnu.org>
date Fri, 04 Jun 1999 18:36:35 +0000
parents 013cea3890cb
children cbe304a26771
comparison
equal deleted inserted replaced
24809:078e0b907e6e 24810:d2cb43703bfb
139 (let* ((open-group (if paren "\\(" "")) 139 (let* ((open-group (if paren "\\(" ""))
140 (close-group (if paren "\\)" "")) 140 (close-group (if paren "\\)" ""))
141 (open-charset (if lax "" open-group)) 141 (open-charset (if lax "" open-group))
142 (close-charset (if lax "" close-group))) 142 (close-charset (if lax "" close-group)))
143 (cond 143 (cond
144 ;; 144 ;; Protect against user-stupidity... could call error here
145 ((null strings)
146 nil)
145 ;; If there is only one string, just return it. 147 ;; If there is only one string, just return it.
146 ((= (length strings) 1) 148 ((= (length strings) 1)
147 (if (= (length (car strings)) 1) 149 (if (= (length (car strings)) 1)
148 (concat open-charset (regexp-quote (car strings)) close-charset) 150 (concat open-charset (regexp-quote (car strings)) close-charset)
149 (concat open-group (regexp-quote (car strings)) close-group))) 151 (concat open-group (regexp-quote (car strings)) close-group)))