summaryrefslogtreecommitdiffstats
path: root/src/window.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/window.c')
-rw-r--r--src/window.c132
1 files changed, 63 insertions, 69 deletions
diff --git a/src/window.c b/src/window.c
index 51745d2717..234d2a87f9 100644
--- a/src/window.c
+++ b/src/window.c
@@ -2469,37 +2469,36 @@ close_last_window_tabpage(
int free_buf,
tabpage_T *prev_curtab)
{
- if (ONE_WINDOW)
- {
- buf_T *old_curbuf = curbuf;
+ if (!ONE_WINDOW)
+ return FALSE;
- /*
- * Closing the last window in a tab page. First go to another tab
- * page and then close the window and the tab page. This avoids that
- * curwin and curtab are invalid while we are freeing memory, they may
- * be used in GUI events.
- * Don't trigger autocommands yet, they may use wrong values, so do
- * that below.
- */
- goto_tabpage_tp(alt_tabpage(), FALSE, TRUE);
+ buf_T *old_curbuf = curbuf;
+
+ /*
+ * Closing the last window in a tab page. First go to another tab
+ * page and then close the window and the tab page. This avoids that
+ * curwin and curtab are invalid while we are freeing memory, they may
+ * be used in GUI events.
+ * Don't trigger autocommands yet, they may use wrong values, so do
+ * that below.
+ */
+ goto_tabpage_tp(alt_tabpage(), FALSE, TRUE);
- // Safety check: Autocommands may have closed the window when jumping
- // to the other tab page.
- if (valid_tabpage(prev_curtab) && prev_curtab->tp_firstwin == win)
- win_close_othertab(win, free_buf, prev_curtab);
+ // Safety check: Autocommands may have closed the window when jumping
+ // to the other tab page.
+ if (valid_tabpage(prev_curtab) && prev_curtab->tp_firstwin == win)
+ win_close_othertab(win, free_buf, prev_curtab);
#ifdef FEAT_JOB_CHANNEL
- entering_window(curwin);
+ entering_window(curwin);
#endif
- // Since goto_tabpage_tp above did not trigger *Enter autocommands, do
- // that now.
- apply_autocmds(EVENT_TABCLOSED, NULL, NULL, FALSE, curbuf);
- apply_autocmds(EVENT_WINENTER, NULL, NULL, FALSE, curbuf);
- apply_autocmds(EVENT_TABENTER, NULL, NULL, FALSE, curbuf);
- if (old_curbuf != curbuf)
- apply_autocmds(EVENT_BUFENTER, NULL, NULL, FALSE, curbuf);
- return TRUE;
- }
- return FALSE;
+ // Since goto_tabpage_tp above did not trigger *Enter autocommands, do
+ // that now.
+ apply_autocmds(EVENT_TABCLOSED, NULL, NULL, FALSE, curbuf);
+ apply_autocmds(EVENT_WINENTER, NULL, NULL, FALSE, curbuf);
+ apply_autocmds(EVENT_TABENTER, NULL, NULL, FALSE, curbuf);
+ if (old_curbuf != curbuf)
+ apply_autocmds(EVENT_BUFENTER, NULL, NULL, FALSE, curbuf);
+ return TRUE;
}
/*
@@ -4205,15 +4204,14 @@ win_alloc_popup_win(void)
win_T *wp;
wp = win_alloc(NULL, TRUE);
- if (wp != NULL)
- {
- // We need to initialize options with something, using the current
- // window makes most sense.
- win_init_some(wp, curwin);
+ if (wp == NULL)
+ return NULL;
+ // We need to initialize options with something, using the current
+ // window makes most sense.
+ win_init_some(wp, curwin);
- RESET_BINDING(wp);
- new_frame(wp);
- }
+ RESET_BINDING(wp);
+ new_frame(wp);
return wp;
}
@@ -4287,11 +4285,10 @@ new_frame(win_T *wp)
frame_T *frp = ALLOC_CLEAR_ONE(frame_T);
wp->w_frame = frp;
- if (frp != NULL)
- {
- frp->fr_layout = FR_LEAF;
- frp->fr_win = wp;
- }
+ if (frp == NULL)
+ return;
+ frp->fr_layout = FR_LEAF;
+ frp->fr_win = wp;
}
/*
@@ -4489,13 +4486,12 @@ may_open_tabpage(void)
int n = (cmdmod.cmod_tab == 0)
? postponed_split_tab : cmdmod.cmod_tab;
- if (n != 0)
- {
- cmdmod.cmod_tab = 0; // reset it to avoid doing it twice
- postponed_split_tab = 0;
- return win_new_tabpage(n);
- }
- return FAIL;
+ if (n == 0)
+ return FAIL;
+
+ cmdmod.cmod_tab = 0; // reset it to avoid doing it twice
+ postponed_split_tab = 0;
+ return win_new_tabpage(n);
}
/*
@@ -4880,12 +4876,11 @@ goto_tabpage_tp(
int
goto_tabpage_lastused(void)
{
- if (valid_tabpage(lastused_tabpage))
- {
- goto_tabpage_tp(lastused_tabpage, TRUE, TRUE);
- return OK;
- }
- return FAIL;
+ if (!valid_tabpage(lastused_tabpage))
+ return FAIL;
+
+ goto_tabpage_tp(lastused_tabpage, TRUE, TRUE);
+ return OK;
}
/*
@@ -5907,17 +5902,17 @@ win_size_save(garray_T *gap)
win_T *wp;
ga_init2(gap, sizeof(int), 1);
- if (ga_grow(gap, win_count() * 2 + 1) == OK)
- {
- // first entry is value of 'lines'
- ((int *)gap->ga_data)[gap->ga_len++] = Rows;
+ if (ga_grow(gap, win_count() * 2 + 1) == FAIL)
+ return;
- FOR_ALL_WINDOWS(wp)
- {
- ((int *)gap->ga_data)[gap->ga_len++] =
- wp->w_width + wp->w_vsep_width;
- ((int *)gap->ga_data)[gap->ga_len++] = wp->w_height;
- }
+ // first entry is value of 'lines'
+ ((int *)gap->ga_data)[gap->ga_len++] = Rows;
+
+ FOR_ALL_WINDOWS(wp)
+ {
+ ((int *)gap->ga_data)[gap->ga_len++] =
+ wp->w_width + wp->w_vsep_width;
+ ((int *)gap->ga_data)[gap->ga_len++] = wp->w_height;
}
}
@@ -7429,12 +7424,11 @@ clear_snapshot(tabpage_T *tp, int idx)
static void
clear_snapshot_rec(frame_T *fr)
{
- if (fr != NULL)
- {
- clear_snapshot_rec(fr->fr_next);
- clear_snapshot_rec(fr->fr_child);
- vim_free(fr);
- }
+ if (fr == NULL)
+ return;
+ clear_snapshot_rec(fr->fr_next);
+ clear_snapshot_rec(fr->fr_child);
+ vim_free(fr);
}
/*