comparison lisp/cl-macs.el @ 5099:a24f2ab0093b

Avoid the query-coding-tests.el hang, by fixing a logic bug. 2010-03-05 Aidan Kehoe <kehoea@parhasard.net> * cl-macs.el (delete-duplicates): Correct the logic of this compiler macro when :from-end is nil, avoiding a hang in query-coding-tests.el. Thanks for the reports, Vin and Mats!
author Aidan Kehoe <kehoea@parhasard.net>
date Fri, 05 Mar 2010 15:11:52 +0000
parents 1ee30d3f9dd0
children f552caabf58b
comparison
equal deleted inserted replaced
5098:e402e3506a53 5099:a24f2ab0093b
3329 (while (memq (car begin) (cdr begin)) 3329 (while (memq (car begin) (cdr begin))
3330 (setq begin (cdr begin))) 3330 (setq begin (cdr begin)))
3331 (setq cl-seq begin) 3331 (setq cl-seq begin)
3332 (while (cddr cl-seq) 3332 (while (cddr cl-seq)
3333 (if (memq (cadr cl-seq) (cddr cl-seq)) 3333 (if (memq (cadr cl-seq) (cddr cl-seq))
3334 (setcdr (cdr cl-seq) (cddr cl-seq)) 3334 (setcdr (cdr cl-seq) (cddr cl-seq)))
3335 (setq cl-seq (cdr cl-seq)))) 3335 (setq cl-seq (cdr cl-seq)))
3336 begin) 3336 begin)
3337 ;; Call cl-delete-duplicates explicitly, to avoid the form 3337 ;; Call cl-delete-duplicates explicitly, to avoid the form
3338 ;; getting compiler-macroexpanded again: 3338 ;; getting compiler-macroexpanded again:
3339 (cl-delete-duplicates begin ',cl-keys nil)))) 3339 (cl-delete-duplicates begin ',cl-keys nil))))
3340 ((loop 3340 ((loop