stumpwm-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[STUMP] [PATCH] Handle convert errors in bytes-to-string


From: Vitaly Mayatskikh
Subject: [STUMP] [PATCH] Handle convert errors in bytes-to-string
Date: Sat, 14 Mar 2009 19:25:47 +0100
User-agent: Wanderlust/2.15.6 (Almost Unreal) Emacs/22.3 Mule/5.0 (SAKAKI)

StumpWM crashes in bytes-to-string when it takes non-convertable
sequence for current locale. The same error handler exists in
utf8-to-string, apply it to bytes-to-string also.

diff --git a/wrappers.lisp b/wrappers.lisp
index 7bae9fe..799d2c8 100644
--- a/wrappers.lisp
+++ b/wrappers.lisp
@@ -184,9 +184,10 @@
 
 (defun bytes-to-string (data)
   "Convert a list of bytes into a string."
-  #+sbcl
-  (sb-ext:octets-to-string
-   (make-array (length data) :element-type '(unsigned-byte 8) 
:initial-contents data))
+  #+sbcl (handler-bind
+             ((sb-impl::octet-decoding-error #'(lambda (c) (invoke-restart 
'use-value "?"))))
+          (sb-ext:octets-to-string
+           (make-array (length data) :element-type '(unsigned-byte 8) 
:initial-contents data)))
   #+clisp
   (ext:convert-string-from-bytes 
    (make-array (length data) :element-type '(unsigned-byte 8) 
:initial-contents data)
-- 
wbr, Vitaly




reply via email to

[Prev in Thread] Current Thread [Next in Thread]