Переглянути джерело

fix btowc corner case

btowc is required to interpret its argument by conversion to unsigned
char, unless the argument is equal to EOF. since the conversion to
produces a non-character value anyway, we can just unconditionally
convert, for now.
Rich Felker 9 роки тому
батько
коміт
38e2f72723
1 змінених файлів з 1 додано та 0 видалено
  1. 1 0
      src/multibyte/btowc.c

+ 1 - 0
src/multibyte/btowc.c

@@ -3,5 +3,6 @@
 
 wint_t btowc(int c)
 {
+	c = (unsigned char)c;
 	return c<128U ? c : EOF;
 }