diff options
| -rw-r--r-- | lisp/calendar/cal-mayan.el | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lisp/calendar/cal-mayan.el b/lisp/calendar/cal-mayan.el index ab605f3ab4a..f1c508a22c2 100644 --- a/lisp/calendar/cal-mayan.el +++ b/lisp/calendar/cal-mayan.el @@ -102,11 +102,12 @@ research. Using 1232041 will give you the correlation used by Spinden.") (condition-case condition (progn (while (< cc c) - (let ((datum (read-from-string str cc))) - (if (not (integerp (car datum))) - (signal 'invalid-read-syntax (car datum)) - (setq rlc (cons (car datum) rlc)) - (setq cc (cdr datum))))) + (let* ((start (string-match "[0-9]+" str cc)) + (end (match-end 0)) + datum) + (setq datum (read (substring str start end))) + (setq rlc (cons datum rlc)) + (setq cc end))) (if (not (= (length rlc) 5)) (signal 'invalid-read-syntax nil))) (invalid-read-syntax nil)) (reverse rlc))) |
