;;The following works as expected:
(handler-bind ((sb-int:character-decoding-error #'(lambda (c) (invoke-restart 'use-value #\?)))) (sb-ext:octets-to-string *euc-jp* :external-format :ascii))
;;This, however, does not, complaining that "?" is not a character:
(handler-bind ((sb-int:character-decoding-error #'(lambda (c) (invoke-restart 'use-value #\?)))) (sb-ext:octets-to-string *euc-jp* :external-format :euc-jp))
Found on 1.0.18, same behavior is exhibited by 1.0.23 and CVS HEAD.
uname -a:
Linux Whimsy 2.6.27-ARCH #1 SMP PREEMPT Sat Nov 8 10:11:43 UTC 2008 i686 Intel(R) Pentium(R) Dual CPU T2370 @ 1.73GHz GenuineIntel GNU/Linux
defvar *euc-jp* (drakma: http-request "http:// blogs.yahoo. co.jp/akira_ w0325/27287392. html" :external-format-in :euc-jp :external- format- out :euc-jp))
;;The following works as expected: character- decoding- error
#'( lambda (c)
(invoke- restart 'use-value #\?))))
( sb-ext: octets- to-string *euc-jp* :external-format :ascii))
(handler-bind ((sb-int:
;;This, however, does not, complaining that "?" is not a character: character- decoding- error
#'( lambda (c)
(invoke- restart 'use-value #\?))))
( sb-ext: octets- to-string *euc-jp* :external-format :euc-jp))
(handler-bind ((sb-int:
Found on 1.0.18, same behavior is exhibited by 1.0.23 and CVS HEAD.
uname -a:
Linux Whimsy 2.6.27-ARCH #1 SMP PREEMPT Sat Nov 8 10:11:43 UTC 2008 i686 Intel(R) Pentium(R) Dual CPU T2370 @ 1.73GHz GenuineIntel GNU/Linux
*FEATURES* (SBCL-1.0.18) FLAT-NAMESPACE CFFI-FEATURES:X86 :FLAT-NAMESPACE :LITTLE-ENDIAN SOCKETS- ADDRINFO :ASDF :SB-THREAD :ANSI-CL :COMMON-LISP LOCATIONS :IEEE-FLOATING- POINT :X86 :UNIX :ELF :LINUX :LARGEFILE GROWS-DOWNWARD- NOT-UPWARD :C-STACK- IS-CONTROL- STACK AND-SWAP- VOPS :UNWIND- TO-FRAME- AND-CALL- VOP :RAW-INSTANCE- INIT-VOPS ALLOCATABLE- CLOSURES :ALIEN-CALLBACKS :CYCLE-COUNTER :LINKAGE-TABLE DLOPEN :OS-PROVIDES-PUTWC :OS-PROVIDES- SUSECONDS- T)
(:CHUNGA :SPLIT-SEQUENCE CFFI-FEATURES:
CFFI-FEATURES:UNIX :CFFI CFFI-SYS:
:FLEXI-STREAMS :SB-BSD-
:SBCL :SB-DOC :SB-TEST :SB-LDB :SB-PACKAGE-LOCKS :SB-UNICODE :SB-EVAL
:SB-SOURCE-
:GENCGC :STACK-
:COMPARE-
:STACK-
:OS-PROVIDES-