]> git.eshelyaron.com Git - emacs.git/commitdiff
(prin1-char): Catch errors from `string'.
authorRichard M. Stallman <rms@gnu.org>
Sat, 29 May 2004 15:33:30 +0000 (15:33 +0000)
committerRichard M. Stallman <rms@gnu.org>
Sat, 29 May 2004 15:33:30 +0000 (15:33 +0000)
(eval-last-sexp-print-value): Print char equivalent regardless
of standard-output value.

lisp/emacs-lisp/lisp-mode.el

index 1f53d9e630f723009408035b999c663dfda3fb8b..d6ac05642ba66e4817f47bf6309f5c553910d224 100644 (file)
@@ -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))