diff --git a/bin/stty/stty.c b/bin/stty/stty.c index f6daaf076ad8..b70f49fcad98 100644 --- a/bin/stty/stty.c +++ b/bin/stty/stty.c @@ -61,9 +61,11 @@ main(int argc, char *argv[]) struct info i; enum FMT fmt; int ch; + const char *file; fmt = NOTSET; i.fd = STDIN_FILENO; + file = "stdin"; opterr = 0; while (optind < argc && @@ -79,6 +81,7 @@ main(int argc, char *argv[]) case 'f': if ((i.fd = open(optarg, O_RDONLY | O_NONBLOCK)) < 0) err(1, "%s", optarg); + file = optarg; break; case 'g': fmt = GFLAG; @@ -92,7 +95,7 @@ args: argc -= optind; argv += optind; if (tcgetattr(i.fd, &i.t) < 0) - errx(1, "stdin isn't a terminal"); + errx(1, "%s isn't a terminal", file); if (ioctl(i.fd, TIOCGETD, &i.ldisc) < 0) err(1, "TIOCGETD"); if (ioctl(i.fd, TIOCGWINSZ, &i.win) < 0)