ccl decoding unsafe in 21.1
"Golubev I. N." <[email protected]> Fri, 27 Sep 2002 14:00:07 (GMT)
| Newsgroups | gmane.emacs.xemacs.mule |
|---|---|
| Message-ID | <[email protected]> |
Current `ccl_driver' implementation in "stable" 21.1 release is unsafe. That is, ccl program specified in elisp can cause crashes of xemacs. More precisely, when called by `mule_decode', it will output strings of bytes that are not in mule internal coding (further called mic). Traversal of such a strings by `bytecount_to_charcount' or so may cause creating invalid byte pointer and attempt to dereference it, which will cause crash. Such a strings are generated when ccl code "writes" an 8-bit character (that is, value between 0x80 and 0xff). So unsafe programs are all programs that decode from coding which includes iso-8859-1 characters, including `ccl-decode-koi8' from `cyrillic.el' in xemacs-21.4. 21.2 branch contains change `2000-10-05 MIYASHITA Hisashi <[email protected]>' that fixes it. In that version when `ccl_driver' is used for decoding to mic, it handles ccl program output safely by always performing conversion to mic, even on 8-bit characters. Are there plans to port such a change to 21.1 branch and make ccl programming in it also crush safe?