Browse Source

Rely on ttyresize to set tty size

This removes ttynew's dependency on cresize being called first, and then
allows us to absorb the ttyresize call into cresize (which always
precedes it).

Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
master
Devin J. Pohly 6 years ago
parent
commit
d84f3f4bd1
2 changed files with 3 additions and 6 deletions
  1. +1
    -2
      st.c
  2. +2
    -4
      x.c

+ 1
- 2
st.c View File

@ -670,7 +670,6 @@ void
ttynew(char *line, char *out, char **args)
{
int m, s;
struct winsize w = {term.row, term.col, 0, 0};
if (out) {
term.mode |= MODE_PRINT;
@ -691,7 +690,7 @@ ttynew(char *line, char *out, char **args)
}
/* seems to work fine on linux, openbsd and freebsd */
if (openpty(&m, &s, NULL, NULL, &w) < 0)
if (openpty(&m, &s, NULL, NULL, NULL) < 0)
die("openpty failed: %s\n", strerror(errno));
switch (pid = fork()) {


+ 2
- 4
x.c View File

@ -276,7 +276,6 @@ zoomabs(const Arg *arg)
xunloadfonts();
xloadfonts(usedfont, arg->f);
cresize(0, 0);
ttyresize(win.tw, win.th);
redraw();
xhints();
}
@ -695,6 +694,7 @@ cresize(int width, int height)
tresize(col, row);
xresize(col, row);
ttyresize(win.tw, win.th);
}
void
@ -1794,7 +1794,6 @@ resize(XEvent *e)
return;
cresize(e->xconfigure.width, e->xconfigure.height);
ttyresize(win.tw, win.th);
}
void
@ -1823,9 +1822,8 @@ run(void)
}
} while (ev.type != MapNotify);
cresize(w, h);
ttynew(opt_line, opt_io, opt_cmd);
ttyresize(win.tw, win.th);
cresize(w, h);
clock_gettime(CLOCK_MONOTONIC, &last);
lastblink = last;


Loading…
Cancel
Save