summaryrefslogtreecommitdiff
path: root/ncurses/tinfo/lib_ttyflags.c
diff options
context:
space:
mode:
Diffstat (limited to 'ncurses/tinfo/lib_ttyflags.c')
-rw-r--r--ncurses/tinfo/lib_ttyflags.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/ncurses/tinfo/lib_ttyflags.c b/ncurses/tinfo/lib_ttyflags.c
index 663a068..43bed35 100644
--- a/ncurses/tinfo/lib_ttyflags.c
+++ b/ncurses/tinfo/lib_ttyflags.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
@@ -41,7 +41,7 @@
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_ttyflags.c,v 1.27 2010/12/25 23:43:58 tom Exp $")
+MODULE_ID("$Id: lib_ttyflags.c,v 1.30 2014/04/26 18:47:20 juergen Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(_nc_get_tty_mode) (NCURSES_SP_DCLx TTY * buf)
@@ -57,7 +57,7 @@ NCURSES_SP_NAME(_nc_get_tty_mode) (NCURSES_SP_DCLx TTY * buf)
result = ERR;
} else {
#ifdef USE_TERM_DRIVER
- result = CallDriver_2(SP_PARM, sgmode, FALSE, buf);
+ result = CallDriver_2(SP_PARM, td_sgmode, FALSE, buf);
#else
for (;;) {
if (GET_TTY(termp->Filedes, buf) != 0) {
@@ -102,10 +102,14 @@ NCURSES_SP_NAME(_nc_set_tty_mode) (NCURSES_SP_DCLx TTY * buf)
result = ERR;
} else {
#ifdef USE_TERM_DRIVER
- result = CallDriver_2(SP_PARM, sgmode, TRUE, buf);
+ result = CallDriver_2(SP_PARM, td_sgmode, TRUE, buf);
#else
for (;;) {
- if (SET_TTY(termp->Filedes, buf) != 0) {
+ if ((SET_TTY(termp->Filedes, buf) != 0)
+#if USE_KLIBC_KBD
+ && !NC_ISATTY(termp->Filedes)
+#endif
+ ) {
if (errno == EINTR)
continue;
if ((errno == ENOTTY) && (SP_PARM != 0))
@@ -141,7 +145,7 @@ NCURSES_SP_NAME(def_shell_mode) (NCURSES_SP_DCL0)
if (termp != 0) {
#ifdef USE_TERM_DRIVER
- rc = CallDriver_2(SP_PARM, mode, FALSE, TRUE);
+ rc = CallDriver_2(SP_PARM, td_mode, FALSE, TRUE);
#else
/*
* If XTABS was on, remove the tab and backtab capabilities.
@@ -179,7 +183,7 @@ NCURSES_SP_NAME(def_prog_mode) (NCURSES_SP_DCL0)
if (termp != 0) {
#ifdef USE_TERM_DRIVER
- rc = CallDriver_2(SP_PARM, mode, TRUE, TRUE);
+ rc = CallDriver_2(SP_PARM, td_mode, TRUE, TRUE);
#else
/*
* Turn off the XTABS bit in the tty structure if it was on.
@@ -215,13 +219,12 @@ NCURSES_SP_NAME(reset_prog_mode) (NCURSES_SP_DCL0)
if (termp != 0) {
#ifdef USE_TERM_DRIVER
- rc = CallDriver_2(SP_PARM, mode, TRUE, FALSE);
+ rc = CallDriver_2(SP_PARM, td_mode, TRUE, FALSE);
#else
if (_nc_set_tty_mode(&termp->Nttyb) == OK) {
if (SP_PARM) {
if (SP_PARM->_keypad_on)
_nc_keypad(SP_PARM, TRUE);
- NC_BUFFERED(SP_PARM, TRUE);
}
rc = OK;
}
@@ -248,12 +251,11 @@ NCURSES_SP_NAME(reset_shell_mode) (NCURSES_SP_DCL0)
if (termp != 0) {
#ifdef USE_TERM_DRIVER
- rc = CallDriver_2(SP_PARM, mode, FALSE, FALSE);
+ rc = CallDriver_2(SP_PARM, td_mode, FALSE, FALSE);
#else
if (SP_PARM) {
_nc_keypad(SP_PARM, FALSE);
_nc_flush();
- NC_BUFFERED(SP_PARM, FALSE);
}
rc = _nc_set_tty_mode(&termp->Ottyb);
#endif