X-Git-Url: http://ncurses.scripts.mit.edu/?a=blobdiff_plain;ds=sidebyside;f=progs%2Ftset.c;h=8bc502a36967b7afeabe4709ca3641b893262106;hb=75a9c36c205ebefe07580acd0b1053a2abbd44b9;hp=7fd916346aee2346e6291579358d1395d0814615;hpb=d30f99439fcc8d4bb4c38e5c4afb4f6555fc6ad4;p=ncurses.git diff --git a/progs/tset.c b/progs/tset.c index 7fd91634..8bc502a3 100644 --- a/progs/tset.c +++ b/progs/tset.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright 2020,2021 Thomas E. Dickey * + * Copyright 2020-2021,2024 Thomas E. Dickey * * Copyright 1998-2016,2017 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * @@ -91,14 +91,14 @@ #include #include -#if HAVE_GETTTYNAM && HAVE_TTYENT_H +#if HAVE_GETTTYNAM #include #endif #ifdef NeXT char *ttyname(int fd); #endif -MODULE_ID("$Id: tset.c,v 1.128 2021/04/03 23:03:48 tom Exp $") +MODULE_ID("$Id: tset.c,v 1.134 2024/04/13 18:59:53 tom Exp $") #ifndef environ extern char **environ; @@ -545,12 +545,14 @@ get_termcap_entry(int fd, char *userarg) int errret; char *p; const char *ttype; +#if HAVE_PATH_TTYS #if HAVE_GETTTYNAM struct ttyent *t; #else FILE *fp; #endif char *ttypath; +#endif /* HAVE_PATH_TTYS */ (void) fd; @@ -563,6 +565,7 @@ get_termcap_entry(int fd, char *userarg) if ((ttype = getenv("TERM")) != 0) goto map; +#if HAVE_PATH_TTYS if ((ttypath = ttyname(fd)) != 0) { p = _nc_basename(ttypath); #if HAVE_GETTTYNAM @@ -600,6 +603,7 @@ get_termcap_entry(int fd, char *userarg) } #endif /* HAVE_GETTTYNAM */ } +#endif /* HAVE_PATH_TTYS */ /* If still undefined, use "unknown". */ ttype = "unknown"; @@ -775,6 +779,7 @@ main(int argc, char **argv) bool opt_w = FALSE; /* set window-size */ TTY mode, oldmode; + _nc_progname = _nc_rootname(*argv); obsolete(argv); noinit = noset = quiet = Sflag = sflag = showterm = 0; while ((ch = getopt(argc, argv, "a:cd:e:Ii:k:m:p:qQrSsVw")) != -1) { @@ -833,7 +838,6 @@ main(int argc, char **argv) } } - _nc_progname = _nc_rootname(*argv); argc -= optind; argv += optind; @@ -855,7 +859,7 @@ main(int argc, char **argv) if (same_program(_nc_progname, PROG_RESET)) { reset_start(stderr, TRUE, FALSE); - reset_tty_settings(my_fd, &mode); + reset_tty_settings(my_fd, &mode, noset); } else { reset_start(stderr, FALSE, TRUE); } @@ -874,9 +878,13 @@ main(int argc, char **argv) if (!noinit) { if (send_init_strings(my_fd, &oldmode)) { + const char *name; + (void) putc('\r', stderr); (void) fflush(stderr); - (void) napms(1000); /* Settle the terminal. */ + if (IsRealTty(my_fd, name)) { + (void) napms(1000); /* Settle the terminal. */ + } } }