diff options
| author | Stefan Monnier | 2010-09-05 11:44:55 +0200 |
|---|---|---|
| committer | Stefan Monnier | 2010-09-05 11:44:55 +0200 |
| commit | 19fe13dfd1d44483bca28b4ad57c55ac1ef68892 (patch) | |
| tree | b9f1db5589763d4699e50755fd1a7dcb3b80ff76 | |
| parent | 89532a078eec050920b444be8d011e952c53157f (diff) | |
| download | emacs-19fe13dfd1d44483bca28b4ad57c55ac1ef68892.tar.gz emacs-19fe13dfd1d44483bca28b4ad57c55ac1ef68892.zip | |
* emacs-lisp/rx.el (rx-any): Don't explode ranges that end in - or ].
(rx-any-condense-range): Explode 2-char ranges.
Fixes: debbugs:6984
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/emacs-lisp/rx.el | 7 |
2 files changed, 11 insertions, 2 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index ea973172b3a..21eaa4c15d3 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2010-09-05 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * emacs-lisp/rx.el (rx-any): Don't explode ranges that end in special | ||
| 4 | chars like - or ] (bug#6984). | ||
| 5 | (rx-any-condense-range): Explode 2-char ranges. | ||
| 6 | |||
| 1 | 2010-09-02 Stefan Monnier <monnier@iro.umontreal.ca> | 7 | 2010-09-02 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 8 | ||
| 3 | * textmodes/bibtex.el: | 9 | * textmodes/bibtex.el: |
diff --git a/lisp/emacs-lisp/rx.el b/lisp/emacs-lisp/rx.el index 85fe3514b01..522d452c2dc 100644 --- a/lisp/emacs-lisp/rx.el +++ b/lisp/emacs-lisp/rx.el | |||
| @@ -427,7 +427,7 @@ Only both edges of each range is checked." | |||
| 427 | (mapcar (lambda (e) | 427 | (mapcar (lambda (e) |
| 428 | (cond | 428 | (cond |
| 429 | ((= (car e) (cdr e)) (list (car e))) | 429 | ((= (car e) (cdr e)) (list (car e))) |
| 430 | ;; ((= (1+ (car e)) (cdr e)) (list (car e) (cdr e))) | 430 | ((= (1+ (car e)) (cdr e)) (list (car e) (cdr e))) |
| 431 | ((list e)))) | 431 | ((list e)))) |
| 432 | l)) | 432 | l)) |
| 433 | (delete-dups str)))) | 433 | (delete-dups str)))) |
| @@ -545,7 +545,10 @@ ARG is optional." | |||
| 545 | ((numberp e) (string e)) | 545 | ((numberp e) (string e)) |
| 546 | ((consp e) | 546 | ((consp e) |
| 547 | (if (and (= (1+ (car e)) (cdr e)) | 547 | (if (and (= (1+ (car e)) (cdr e)) |
| 548 | (null (memq (car e) '(?\] ?-)))) | 548 | ;; rx-any-condense-range should |
| 549 | ;; prevent this case from happening. | ||
| 550 | (null (memq (car e) '(?\] ?-))) | ||
| 551 | (null (memq (cdr e) '(?\] ?-)))) | ||
| 549 | (string (car e) (cdr e)) | 552 | (string (car e) (cdr e)) |
| 550 | (string (car e) ?- (cdr e)))) | 553 | (string (car e) ?- (cdr e)))) |
| 551 | (e))) | 554 | (e))) |