summaryrefslogtreecommitdiff
path: root/Src
diff options
context:
space:
mode:
Diffstat (limited to 'Src')
-rw-r--r--Src/Zle/zle_main.c1
-rw-r--r--Src/params.c13
-rw-r--r--Src/utils.c102
3 files changed, 11 insertions, 105 deletions
diff --git a/Src/Zle/zle_main.c b/Src/Zle/zle_main.c
index 21ee8a4ed..010167de6 100644
--- a/Src/Zle/zle_main.c
+++ b/Src/Zle/zle_main.c
@@ -1074,6 +1074,7 @@ zleread(char **lp, char **rp, int flags, int context)
Thingy initthingy;
#if defined(HAVE_POLL) || defined(HAVE_SELECT)
+ /* may not be set, but that's OK since getiparam() returns 0 == off */
baud = getiparam("BAUD");
costmult = (baud) ? 3840000L / baud : 0;
#endif
diff --git a/Src/params.c b/Src/params.c
index 917f2ee85..8e79b289b 100644
--- a/Src/params.c
+++ b/Src/params.c
@@ -640,9 +640,16 @@ createparamtable(void)
setiparam("LOGCHECK", 60);
setiparam("KEYTIMEOUT", 40);
setiparam("LISTMAX", 100);
-#ifdef HAVE_SELECT
- setiparam("BAUD", getbaudrate(&shttyinfo)); /* get the output baudrate */
-#endif
+ /*
+ * We used to get the output baud rate here. However, that's
+ * pretty irrelevant to a terminal on an X display and can lead
+ * to unnecessary delays if it's wrong (which it probably is).
+ * Furthermore, even if the output is slow it's very likely
+ * to be because of WAN delays, not covered by the output
+ * baud rate.
+ * So allow the user to set it in the special cases where it's
+ * useful.
+ */
setsparam("TMPPREFIX", ztrdup(DEFAULT_TMPPREFIX));
setsparam("TIMEFMT", ztrdup(DEFAULT_TIMEFMT));
setsparam("WATCHFMT", ztrdup(default_watchfmt));
diff --git a/Src/utils.c b/Src/utils.c
index 166dad151..2ea8ba991 100644
--- a/Src/utils.c
+++ b/Src/utils.c
@@ -3435,108 +3435,6 @@ gettygrp(void)
return arg;
}
-/* Return the output baudrate */
-
-#ifdef HAVE_SELECT
-/**/
-long
-getbaudrate(struct ttyinfo *shttyinfo)
-{
- long speedcode;
-
-#ifdef HAS_TIO
-# if defined(HAVE_TCGETATTR) && defined(HAVE_TERMIOS_H)
- speedcode = cfgetospeed(&shttyinfo->tio);
-# else
- speedcode = shttyinfo->tio.c_cflag & CBAUD;
-# endif
-#else
- speedcode = shttyinfo->sgttyb.sg_ospeed;
-#endif
-
- switch (speedcode) {
- case B0:
- return (0L);
- case B50:
- return (50L);
- case B75:
- return (75L);
- case B110:
- return (110L);
- case B134:
- return (134L);
- case B150:
- return (150L);
- case B200:
- return (200L);
- case B300:
- return (300L);
- case B600:
- return (600L);
-#ifdef _B900
- case _B900:
- return (900L);
-#endif
- case B1200:
- return (1200L);
- case B1800:
- return (1800L);
- case B2400:
- return (2400L);
-#ifdef _B3600
- case _B3600:
- return (3600L);
-#endif
- case B4800:
- return (4800L);
-#ifdef _B7200
- case _B7200:
- return (7200L);
-#endif
- case B9600:
- return (9600L);
-#ifdef B19200
- case B19200:
- return (19200L);
-#else
-# ifdef EXTA
- case EXTA:
- return (19200L);
-# endif
-#endif
-#ifdef B38400
- case B38400:
- return (38400L);
-#else
-# ifdef EXTB
- case EXTB:
- return (38400L);
-# endif
-#endif
-#ifdef B57600
- case B57600:
- return (57600L);
-#endif
-#ifdef B115200
- case B115200:
- return (115200L);
-#endif
-#ifdef B230400
- case B230400:
- return (230400L);
-#endif
-#ifdef B460800
- case B460800:
- return (460800L);
-#endif
- default:
- if (speedcode >= 100)
- return speedcode;
- break;
- }
- return (0L);
-}
-#endif
/* Escape tokens and null characters. Buf is the string which should be *
* escaped. len is the length of the string. If len is -1, buf should be *