Merge pull request #26 from saghm/master
fix for encode_ut8 returning iterator
diff --git a/src/lib.rs b/src/lib.rs
index 8216150..21a1e00 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -290,8 +290,16 @@
if s.buf.len() < s.buf.capacity() {
if s.buf.len() == s.pos {
s.buf.push(ch);
- let size = ch.encode_utf8(&mut s.bytes).unwrap();
+
+ let mut size = 0;
+
+ for (i, byte) in ch.encode_utf8().take(4).enumerate() {
+ size += 1;
+ s.bytes[i] = byte;
+ }
+
s.pos += size;
+
if s.prompt_width + width(&s.buf) < s.cols {
// Avoid a full update of the line in the trivial case.
write_and_flush(s.out, &mut s.bytes[0..size])