]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
vt: provide notifications on selection changes
authorNicolas Pitre <nicolas.pitre@linaro.org>
Fri, 23 Jan 2015 22:07:21 +0000 (17:07 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 2 Feb 2015 18:09:54 +0000 (10:09 -0800)
The vcs device's poll/fasync support relies on the vt notifier to signal
changes to the screen content.  Notifier invocations were missing for
changes that comes through the selection interface though.  Fix that.

Tested with BRLTTY 5.2.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Cc: Dave Mielke <dave@mielke.cc>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/vt/vt.c

index 5d36c2358b4761adcc7acf5fb6e66ac309a8542a..6e00572cbeb9386bd357a5ec466e5c2eb259fc4c 100644 (file)
@@ -500,6 +500,7 @@ void invert_screen(struct vc_data *vc, int offset, int count, int viewed)
 #endif
        if (DO_UPDATE(vc))
                do_update_region(vc, (unsigned long) p, count);
+       notify_update(vc);
 }
 
 /* used by selection: complement pointer position */
@@ -516,6 +517,7 @@ void complement_pos(struct vc_data *vc, int offset)
                scr_writew(old, screenpos(vc, old_offset, 1));
                if (DO_UPDATE(vc))
                        vc->vc_sw->con_putc(vc, old, oldy, oldx);
+               notify_update(vc);
        }
 
        old_offset = offset;
@@ -533,8 +535,8 @@ void complement_pos(struct vc_data *vc, int offset)
                        oldy = (offset >> 1) / vc->vc_cols;
                        vc->vc_sw->con_putc(vc, new, oldy, oldx);
                }
+               notify_update(vc);
        }
-
 }
 
 static void insert_char(struct vc_data *vc, unsigned int nr)