summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bfstd.c8
-rw-r--r--src/bfstd.h5
2 files changed, 13 insertions, 0 deletions
diff --git a/src/bfstd.c b/src/bfstd.c
index 64cc605..4269d55 100644
--- a/src/bfstd.c
+++ b/src/bfstd.c
@@ -568,6 +568,14 @@ int xtcgetwinsize(int fd, struct winsize *ws) {
#endif
}
+int xtcsetwinsize(int fd, const struct winsize *ws) {
+#if BFS_HAS_TCSETWINSIZE
+ return tcsetwinsize(fd, ws);
+#else
+ return ioctl(fd, TIOCSWINSZ, ws);
+#endif
+}
+
int dup_cloexec(int fd) {
#ifdef F_DUPFD_CLOEXEC
return fcntl(fd, F_DUPFD_CLOEXEC, 0);
diff --git a/src/bfstd.h b/src/bfstd.h
index a17ce95..51920c9 100644
--- a/src/bfstd.h
+++ b/src/bfstd.h
@@ -350,6 +350,11 @@ int open_cterm(int flags);
*/
int xtcgetwinsize(int fd, struct winsize *ws);
+/**
+ * tcsetwinsize()/ioctl(TIOCSWINSZ) wrapper.
+ */
+int xtcsetwinsize(int fd, const struct winsize *ws);
+
// #include <unistd.h>
/**