Merge branch 'obsd-master'

This commit is contained in:
Thomas Adam
2019-11-28 12:18:41 +00:00
20 changed files with 196 additions and 59 deletions

View File

@ -83,7 +83,7 @@ spawn_window(struct spawn_context *sc, char **cause)
struct window_pane *wp;
struct winlink *wl;
int idx = sc->idx;
u_int sx, sy;
u_int sx, sy, xpixel, ypixel;
spawn_log(__func__, sc);
@ -153,8 +153,9 @@ spawn_window(struct spawn_context *sc, char **cause)
xasprintf(cause, "couldn't add window %d", idx);
return (NULL);
}
default_window_size(sc->c, s, NULL, &sx, &sy, -1);
if ((w = window_create(sx, sy)) == NULL) {
default_window_size(sc->c, s, NULL, &sx, &sy, &xpixel, &ypixel,
-1);
if ((w = window_create(sx, sy, xpixel, ypixel)) == NULL) {
winlink_remove(&s->windows, sc->wl);
xasprintf(cause, "couldn't create window %d", idx);
return (NULL);
@ -336,6 +337,8 @@ spawn_pane(struct spawn_context *sc, char **cause)
memset(&ws, 0, sizeof ws);
ws.ws_col = screen_size_x(&new_wp->base);
ws.ws_row = screen_size_y(&new_wp->base);
ws.ws_xpixel = w->xpixel * ws.ws_col;
ws.ws_ypixel = w->ypixel * ws.ws_row;
/* Block signals until fork has completed. */
sigfillset(&set);