vt: synchronize types and use min in csi_X
authorJiri Slaby <jslaby@suse.cz>
Mon, 15 Jun 2020 07:48:55 +0000 (09:48 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 24 Jun 2020 15:08:33 +0000 (17:08 +0200)
All the types are unsinged ints -- even the vpar passed to the function.
So unify them and use min() to compute count instead of explicit
comparison.

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

index 4686f8b9251d3c8f77c7fc1cca8d16bad66a42a4..b1fdbf119755e6e3b83058a5253df64c4d4d8a27 100644 (file)
@@ -1582,13 +1582,15 @@ static void csi_K(struct vc_data *vc, int vpar)
                do_update_region(vc, (unsigned long)(start + offset), count);
 }
 
-static void csi_X(struct vc_data *vc, int vpar) /* erase the following vpar positions */
+/* erase the following vpar positions */
+static void csi_X(struct vc_data *vc, unsigned int vpar)
 {                                        /* not vt100? */
-       int count;
+       unsigned int count;
 
        if (!vpar)
                vpar++;
-       count = (vpar > vc->vc_cols - vc->state.x) ? (vc->vc_cols - vc->state.x) : vpar;
+
+       count = min(vpar, vc->vc_cols - vc->state.x);
 
        vc_uniscr_clear_line(vc, vc->state.x, count);
        scr_memsetw((unsigned short *)vc->vc_pos, vc->vc_video_erase_char, 2 * count);