]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - progs/reset_cmd.c
ncurses 6.3
[ncurses.git] / progs / reset_cmd.c
index d4420b7d5b64d94f9776b9fbfc223a8922da7067..eff3af729e6090c75ac0737fb139aa482c80d89a 100644 (file)
 #endif
 
 #if NEED_PTEM_H
-/* they neglected to define struct winsize in termios.h -- it's only
+/* they neglected to define struct winsize in termios.h -- it is only
    in termio.h */
 #include <sys/stream.h>
 #include <sys/ptem.h>
 #endif
 
-MODULE_ID("$Id: reset_cmd.c,v 1.25 2021/03/20 18:23:14 tom Exp $")
+MODULE_ID("$Id: reset_cmd.c,v 1.28 2021/10/02 18:08:44 tom Exp $")
 
 /*
  * SCO defines TIOCGSIZE and the corresponding struct.  Other systems (SunOS,
@@ -102,7 +102,7 @@ cat_file(char *file)
     bool sent = FALSE;
 
     if (file != 0) {
-       if ((fp = fopen(file, "r")) == 0)
+       if ((fp = safe_fopen(file, "r")) == 0)
            failed(file);
 
        while ((nr = fread(buf, sizeof(char), sizeof(buf), fp)) != 0) {
@@ -193,7 +193,7 @@ out_char(int c)
  * a child program dies in raw mode.
  */
 void
-reset_tty_settings(int fd, TTY * tty_settings)
+reset_tty_settings(int fd, TTY * tty_settings, int noset)
 {
     GET_TTY(fd, tty_settings);
 
@@ -329,7 +329,9 @@ reset_tty_settings(int fd, TTY * tty_settings)
        );
 #endif
 
-    SET_TTY(fd, tty_settings);
+    if (!noset) {
+       SET_TTY(fd, tty_settings);
+    }
 }
 
 /*