From 013bd4461d95341fbd7c2f742844666a5e966f94 Mon Sep 17 00:00:00 2001 From: Scott Prager Date: Sun, 5 Apr 2015 16:07:54 -0400 Subject: term: use window col offset to calculate width fixes #2317 --- src/nvim/terminal.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/nvim/terminal.c') diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c index ed1a8f32b3..136aa0e401 100644 --- a/src/nvim/terminal.c +++ b/src/nvim/terminal.c @@ -338,7 +338,7 @@ void terminal_resize(Terminal *term, uint16_t width, uint16_t height) // terminal in the current tab. FOR_ALL_WINDOWS_IN_TAB(wp, curtab) { if (!wp->w_closing && wp->w_buffer == term->buf) { - width = (uint16_t)MIN(width, (uint16_t)wp->w_width); + width = (uint16_t)MIN(width, (uint16_t)(wp->w_width - win_col_off(wp))); height = (uint16_t)MIN(height, (uint16_t)wp->w_height); } } @@ -358,6 +358,9 @@ void terminal_enter(bool process_deferred) Terminal *term = curbuf->terminal; assert(term && "should only be called when curbuf has a terminal"); + // Ensure the terminal is properly sized. + terminal_resize(term, 0, 0); + checkpcmark(); setpcmark(); int save_state = State; -- cgit