diff --git a/src/env.cpp b/src/env.cpp index 5bf60d470..0d5917fde 100644 --- a/src/env.cpp +++ b/src/env.cpp @@ -2,6 +2,7 @@ #include "config.h" // IWYU pragma: keep #include +#include #include #include #include @@ -447,8 +448,9 @@ static bool does_term_support_setting_title() { if (term_str == L"linux") return false; if (term_str == L"dumb") return false; - char *n = ttyname(STDIN_FILENO); - if (!n || strstr(n, "tty") || strstr(n, "/vc/")) return false; + char buf[PATH_MAX]; + int retval = ttyname_r(STDIN_FILENO, buf, PATH_MAX); + if (retval != 0 || strstr(buf, "tty") || strstr(buf, "/vc/")) return false; } return true;