# HG changeset patch # User Kenichi Handa # Date 1078835224 0 # Node ID a7e59b39de3532e580254065717264886410135b # Parent 2d1d046af00aab6f2e0b01eefde50f39eeb8f680 (decode_coding_emacs_mule): Handle insufficent source correctly. diff -r 2d1d046af00a -r a7e59b39de35 src/coding.c --- a/src/coding.c Tue Mar 09 01:25:27 2004 +0000 +++ b/src/coding.c Tue Mar 09 12:27:04 2004 +0000 @@ -1024,9 +1024,26 @@ } else { - bytes = CHAR_STRING (*src, tmp); - p = tmp; + int i, c; + + bytes = BYTES_BY_CHAR_HEAD (*src); src++; + for (i = 1; i < bytes; i++) + { + ONE_MORE_BYTE (c); + if (CHAR_HEAD_P (c)) + break; + } + if (i < bytes) + { + bytes = CHAR_STRING (*src_base, tmp); + p = tmp; + src = src_base + 1; + } + else + { + p = src_base; + } } if (dst + bytes >= (dst_bytes ? dst_end : src)) {