vte: fix reset_state() resetting only saved-states
authorDavid Herrmann <dh.herrmann@googlemail.com>
Sun, 15 Jul 2012 10:54:19 +0000 (12:54 +0200)
committerDavid Herrmann <dh.herrmann@googlemail.com>
Sun, 15 Jul 2012 10:54:19 +0000 (12:54 +0200)
reset_state() is used to reset the saved state and not to reset the actual
state. We currently get invalid character-maps as we never initialize them
correctly. This fixes all these vte_map() related bugs.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
src/vte.c

index c17eb14..c414310 100644 (file)
--- a/src/vte.c
+++ b/src/vte.c
@@ -367,15 +367,15 @@ static void reset_state(struct kmscon_vte *vte)
        vte->saved_state.cursor_y = 0;
        vte->saved_state.origin_mode = false;
        vte->saved_state.wrap_mode = true;
-       vte->gl = &kmscon_vte_unicode_lower;
-       vte->gr = &kmscon_vte_unicode_upper;
-
-       set_fcolor(&vte->cattr, vte->def_fcol);
-       set_bcolor(&vte->cattr, vte->def_bcol);
-       vte->cattr.bold = 0;
-       vte->cattr.underline = 0;
-       vte->cattr.inverse = 0;
-       vte->cattr.protect = 0;
+       vte->saved_state.gl = &kmscon_vte_unicode_lower;
+       vte->saved_state.gr = &kmscon_vte_unicode_upper;
+
+       set_fcolor(&vte->saved_state.cattr, vte->def_fcol);
+       set_bcolor(&vte->saved_state.cattr, vte->def_bcol);
+       vte->saved_state.cattr.bold = 0;
+       vte->saved_state.cattr.underline = 0;
+       vte->saved_state.cattr.inverse = 0;
+       vte->saved_state.cattr.protect = 0;
 }
 
 static void save_state(struct kmscon_vte *vte)