vt: simplify vc_attr handling in vc_con_write_normal
authorJiri Slaby <jslaby@suse.cz>
Mon, 15 Jun 2020 07:48:53 +0000 (09:48 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 24 Jun 2020 15:08:33 +0000 (17:08 +0200)
Invert the attribute on the only place, without the need of checking
'inverse'.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Link: https://lore.kernel.org/r/20200615074910.19267-21-jslaby@suse.cz
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/vt/vt.c

index d3cd256..72ae8ed 100644 (file)
@@ -2730,7 +2730,7 @@ static int vc_con_write_normal(struct vc_data *vc, int tc, int c,
                struct vc_draw_region *draw)
 {
        int next_c;
-       unsigned char vc_attr;
+       unsigned char vc_attr = vc->vc_attr;
        u16 himask = vc->vc_hi_font_mask, charmask = himask ? 0x1ff : 0xff;
        u8 width = 1;
        bool inverse = false;
@@ -2769,17 +2769,13 @@ static int vc_con_write_normal(struct vc_data *vc, int tc, int c,
                                tc = conv_uni_to_pc(vc, '?');
                                if (tc < 0)
                                        tc = '?';
+
+                               vc_attr = vc_invert_attr(vc);
+                               con_flush(vc, draw);
                        }
                }
        }
 
-       if (!inverse) {
-               vc_attr = vc->vc_attr;
-       } else {
-               vc_attr = vc_invert_attr(vc);
-               con_flush(vc, draw);
-       }
-
        next_c = c;
        while (1) {
                if (vc->vc_need_wrap || vc->vc_decim)