From: Richard M. Stallman Date: Sat, 29 May 2004 15:33:30 +0000 (+0000) Subject: (prin1-char): Catch errors from `string'. X-Git-Tag: ttn-vms-21-2-B4~6012 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=152472ba196b8c415045b3eecf8488c56b90d5da;p=emacs.git (prin1-char): Catch errors from `string'. (eval-last-sexp-print-value): Print char equivalent regardless of standard-output value. --- diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index 1f53d9e630f..d6ac05642ba 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -470,7 +470,10 @@ If CHAR is not a character, return nil." (cond ((memq c '(?\; ?\( ?\) ?\{ ?\} ?\[ ?\] ?\" ?\' ?\\)) (string ?\\ c)) ((eq c 127) "\\C-?") - (t (string c))))))) + (t + (condition-case nil + (string c) + (error nil)))))))) (defun eval-last-sexp-1 (eval-last-sexp-arg-internal) "Evaluate sexp before point; print value in minibuffer. @@ -538,9 +541,8 @@ With argument, print output into current buffer." end) (prog1 (prin1 value) - (if (eq standard-output t) - (let ((str (eval-expression-print-format value))) - (if str (princ str)))) + (let ((str (eval-expression-print-format value))) + (if str (princ str))) (setq end (point)) (when (and (bufferp standard-output) (or (not (null print-length))