From 6226ee6ed6adf2a8708c0b36d62695d48b895ae6 Mon Sep 17 00:00:00 2001 From: Jeremy Soller <jackpot51@gmail.com> Date: Mon, 6 Mar 2017 07:35:09 -0700 Subject: [PATCH] Improve performance of character rendering --- src/terminal/console.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/terminal/console.rs b/src/terminal/console.rs index 9407dc1..ec30e90 100644 --- a/src/terminal/console.rs +++ b/src/terminal/console.rs @@ -206,13 +206,14 @@ impl Console { let font_bold = &self.font_bold; let window = &mut self.window; let changed = &mut self.changed; + let mut str_buf = [0; 4]; self.console.write(buf, |event| { match event { ransid::Event::Char { x, y, c, color, bold, .. } => { if bold { - font_bold.render(&c.to_string(), 16.0).draw(window, x as i32 * 8, y as i32 * 16, Color { data: color.data }); + font_bold.render(&c.encode_utf8(&mut str_buf), 16.0).draw(window, x as i32 * 8, y as i32 * 16, Color { data: color.data }); } else { - font.render(&c.to_string(), 16.0).draw(window, x as i32 * 8, y as i32 * 16, Color { data: color.data }); + font.render(&c.encode_utf8(&mut str_buf), 16.0).draw(window, x as i32 * 8, y as i32 * 16, Color { data: color.data }); } changed.insert(y); }, -- GitLab