From: tomo Date: Tue, 31 May 2011 07:36:54 +0000 (+0000) Subject: (char_encode_as_entity_reference): Don't use `DECODE_CHAR' to detect X-Git-Tag: r21-4-22-chise-0_25-10^20~432 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=5ad2af6de5be2bc7c1375b3e2652b5c450d96925;p=chise%2Fxemacs-chise.git- (char_encode_as_entity_reference): Don't use `DECODE_CHAR' to detect isolated characters. --- diff --git a/src/text-coding.c b/src/text-coding.c index 6485b64..8015b7c 100644 --- a/src/text-coding.c +++ b/src/text-coding.c @@ -3415,11 +3415,22 @@ char_encode_as_entity_reference (Emchar ch, char* buf) char_type = Qnil; if (!NILP (ccs = Ffind_charset (ccs))) { - int code_point = charset_code_point (ccs, ch, 0); + int code_point + = charset_code_point (ccs, ch, + NILP (char_type) ? + CHAR_ALL : CHAR_ISOLATED_ONLY ); if ( (code_point >= 0) - && (NILP (char_type) - || DECODE_CHAR (ccs, code_point, 0) != ch) ) + && ( NILP (char_type) +#if 1 + || ( charset_code_point (ccs, ch, CHAR_DEFINED_ONLY) + == -1 ) +#endif +#if 0 + || ( DECODE_CHAR (ccs, code_point, 0) != ch ) +#endif + ) + ) { Lisp_Object ret;