summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryokota <yokota@FreeBSD.org>1998-11-03 02:37:46 +0000
committeryokota <yokota@FreeBSD.org>1998-11-03 02:37:46 +0000
commitbea6b236e28d2a7af41d36e3307937621a076b53 (patch)
tree0be26765ee203b86a30e4e75c387b637d1f50e72
parente79304233b8444f43db31f1414e3cd2a1ea95587 (diff)
downloadFreeBSD-src-bea6b236e28d2a7af41d36e3307937621a076b53.zip
FreeBSD-src-bea6b236e28d2a7af41d36e3307937621a076b53.tar.gz
Don't update the screen while the cursor shape is being changed
by the user-land program. PR: i386/8344
-rw-r--r--sys/dev/syscons/syscons.c6
-rw-r--r--sys/i386/isa/syscons.c6
2 files changed, 10 insertions, 2 deletions
diff --git a/sys/dev/syscons/syscons.c b/sys/dev/syscons/syscons.c
index caf072a..d4178e8 100644
--- a/sys/dev/syscons/syscons.c
+++ b/sys/dev/syscons/syscons.c
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: syscons.c,v 1.284 1998/10/01 21:04:52 ache Exp $
+ * $Id: syscons.c,v 1.285 1998/10/22 05:58:40 bde Exp $
*/
#include "sc.h"
@@ -978,10 +978,12 @@ scioctl(dev_t dev, u_long cmd, caddr_t data, int flag, struct proc *p)
* are affected. Update the cursor in the current console...
*/
if (!ISGRAPHSC(cur_console)) {
+ s = spltty();
remove_cursor_image(cur_console);
if (sc_flags & CHAR_CURSOR)
set_destructive_cursor(cur_console);
draw_cursor_image(cur_console);
+ splx(s);
}
return 0;
@@ -2820,10 +2822,12 @@ scan_esc(scr_stat *scp, u_char c)
* are affected. Update the cursor in the current console...
*/
if (!ISGRAPHSC(cur_console)) {
+ i = spltty();
remove_cursor_image(cur_console);
if (sc_flags & CHAR_CURSOR)
set_destructive_cursor(cur_console);
draw_cursor_image(cur_console);
+ splx(i);
}
break;
diff --git a/sys/i386/isa/syscons.c b/sys/i386/isa/syscons.c
index caf072a..d4178e8 100644
--- a/sys/i386/isa/syscons.c
+++ b/sys/i386/isa/syscons.c
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: syscons.c,v 1.284 1998/10/01 21:04:52 ache Exp $
+ * $Id: syscons.c,v 1.285 1998/10/22 05:58:40 bde Exp $
*/
#include "sc.h"
@@ -978,10 +978,12 @@ scioctl(dev_t dev, u_long cmd, caddr_t data, int flag, struct proc *p)
* are affected. Update the cursor in the current console...
*/
if (!ISGRAPHSC(cur_console)) {
+ s = spltty();
remove_cursor_image(cur_console);
if (sc_flags & CHAR_CURSOR)
set_destructive_cursor(cur_console);
draw_cursor_image(cur_console);
+ splx(s);
}
return 0;
@@ -2820,10 +2822,12 @@ scan_esc(scr_stat *scp, u_char c)
* are affected. Update the cursor in the current console...
*/
if (!ISGRAPHSC(cur_console)) {
+ i = spltty();
remove_cursor_image(cur_console);
if (sc_flags & CHAR_CURSOR)
set_destructive_cursor(cur_console);
draw_cursor_image(cur_console);
+ splx(i);
}
break;
OpenPOWER on IntegriCloud