diff options
Diffstat (limited to 'window.c')
-rw-r--r-- | window.c | 14 |
1 files changed, 12 insertions, 2 deletions
@@ -30,8 +30,6 @@ #include <string.h> #include <time.h> #include <unistd.h> -#include <util.h> -#include <vis.h> #include "tmux.h" @@ -452,6 +450,15 @@ window_pane_send_resize(struct window_pane *wp, int yadjust) ws.ws_xpixel = w->xpixel * ws.ws_col; ws.ws_ypixel = w->ypixel * ws.ws_row; if (ioctl(wp->fd, TIOCSWINSZ, &ws) == -1) +#ifdef __sun + /* + * Some versions of Solaris apparently can return an error when + * resizing; don't know why this happens, can't reproduce on + * other platforms and ignoring it doesn't seem to cause any + * issues. + */ + if (errno != EINVAL && errno != ENXIO) +#endif fatal("ioctl failed"); } @@ -901,6 +908,9 @@ window_pane_destroy(struct window_pane *wp) free(wp->searchstr); if (wp->fd != -1) { +#ifdef HAVE_UTEMPTER + utempter_remove_record(wp->fd); +#endif bufferevent_free(wp->event); close(wp->fd); } |