]> git.wh0rd.org Git - nano.git/commitdiff
add minor fixes to make the displaying of invalid multibyte sequences
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Wed, 12 Jan 2005 04:32:43 +0000 (04:32 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Wed, 12 Jan 2005 04:32:43 +0000 (04:32 +0000)
work again

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2249 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

src/chars.c
src/winio.c

index 134bad3cef899999fc2a0b880a12e7b363fe8292..de28d420b5f546543aa75d0d7052b4fd2f986405 100644 (file)
@@ -150,7 +150,7 @@ char *control_mbrep(const char *c, char *crep, int *crep_len)
 
        if (c_mb_len <= 0) {
            mbtowc(NULL, NULL, 0);
-           wc = *c;
+           wc = (unsigned char)*c;
        }
 
        wcrep = control_wrep(wc);
@@ -237,14 +237,13 @@ char *make_mbchar(unsigned int chr, char *chr_mb, int *chr_mb_len)
        *chr_mb_len = wctomb(chr_mb, chr);
 
        if (*chr_mb_len <= 0) {
-           mbtowc(NULL, NULL, 0);
-           *chr_mb_len = 1;
-           chr_mb[0] = (unsigned char)chr;
+           wctomb(NULL, 0);
+           *chr_mb_len = 0;
        }
     } else {
 #endif
        *chr_mb_len = 1;
-       chr_mb[0] = (unsigned char)chr;
+       chr_mb[0] = (char)chr;
 #ifdef NANO_WIDE
     }
 #endif
index 3a99ea7dffc1d1961270bbcb169132f42d8703c8..328fafc3f9acb18f4f2d19fc7d91c8250710c6b1 100644 (file)
@@ -2190,7 +2190,7 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool
                char *bad_buf_mb = charalloc(mb_cur_max());
                int bad_buf_mb_len;
 
-               bad_buf_mb = make_mbchar((unsigned int)*buf_mb,
+               bad_buf_mb = make_mbchar((unsigned char)*buf_mb,
                        bad_buf_mb, &bad_buf_mb_len);
 
                for (i = 0; i < bad_buf_mb_len; i++)