Problem: Compiler warning for self-comparison.
Solution: Define ONE_WINDOW and add #ifdef.
}
#ifdef FEAT_WINDOWS
/* don't close last window */
- if (firstwin == lastwin
+ if (ONE_WINDOW
&& (first_tabpage->tp_next == NULL || !had_tab))
#endif
use_firstwin = TRUE;
* :h|wincmd w|1q - don't quit
* :h|wincmd w|q - quit
*/
- if (only_one_window() && (firstwin == lastwin || eap->addr_count == 0))
+ if (only_one_window() && (ONE_WINDOW || eap->addr_count == 0))
#endif
getout(0);
#ifdef FEAT_WINDOWS
EXTERN win_T *firstwin; /* first window */
EXTERN win_T *lastwin; /* last window */
EXTERN win_T *prevwin INIT(= NULL); /* previous window */
+# define ONE_WINDOW (firstwin == lastwin)
# define W_NEXT(wp) ((wp)->w_next)
# define FOR_ALL_WINDOWS(wp) for (wp = firstwin; wp != NULL; wp = wp->w_next)
# define FOR_ALL_TABPAGES(tp) for (tp = first_tabpage; tp != NULL; tp = tp->tp_next)
#else
# define firstwin curwin
# define lastwin curwin
+# define ONE_WINDOW 1
# define W_NEXT(wp) NULL
# define FOR_ALL_WINDOWS(wp) wp = curwin;
# define FOR_ALL_TABPAGES(tp) for (;FALSE;)
#endif
if (dir == FORWARD)
{
- if (firstwin == lastwin && p_window > 0 && p_window < Rows - 1)
+ if (ONE_WINDOW && p_window > 0 && p_window < Rows - 1)
{
/* Vi compatible scrolling */
if (p_window <= 2)
continue;
}
#endif
- if (firstwin == lastwin && p_window > 0 && p_window < Rows - 1)
+ if (ONE_WINDOW && p_window > 0 && p_window < Rows - 1)
{
/* Vi compatible scrolling (sort of) */
if (p_window <= 2)
* If there is only one window and it is the quickfix window, create a
* new one above the quickfix window.
*/
- if (((firstwin == lastwin) && bt_quickfix(curbuf)) || !usable_win)
+ if ((ONE_WINDOW && bt_quickfix(curbuf)) || !usable_win)
{
flags = WSP_ABOVE;
if (ll_ref != NULL)
if (mid_start == 0)
{
mid_end = wp->w_height;
- if (lastwin == firstwin)
+ if (ONE_WINDOW)
{
/* Clear the screen when it was not done by win_del_lines() or
* win_ins_lines() above, "screen_cleared" is FALSE or MAYBE
#ifdef FEAT_DIFF
&& filler_todo <= 0
#endif
- && W_WIDTH(wp) == Columns)
+#ifdef FEAT_WINDOWS
+ && W_WIDTH(wp) == Columns
+#endif
+ )
{
/* Remember that the line wraps, used for modeless copy. */
LineWraps[screen_row - 1] = TRUE;
* window differs, or the fillchars differ, or this is not the
* current window */
if (*attr != 0 && ((hl_attr(HLF_S) != hl_attr(HLF_SNC)
- || !is_curwin || firstwin == lastwin)
+ || !is_curwin || ONE_WINDOW)
|| (fill_stl != fill_stlnc)))
return fill;
if (is_curwin)
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 69,
/**/
68,
/**/
/* cursor to previous window with wrap around */
case 'W':
CHECK_CMDWIN
- if (firstwin == lastwin && Prenum != 1) /* just one window */
+ if (ONE_WINDOW && Prenum != 1) /* just one window */
beep_flush();
else
{
frame_T *frp;
int n;
- if (firstwin == lastwin) /* nothing to do */
+ if (ONE_WINDOW) /* nothing to do */
{
beep_flush();
return;
}
return TRUE;
#else
- return firstwin == lastwin;
+ return ONE_WINDOW;
#endif
}
int free_buf,
tabpage_T *prev_curtab)
{
- if (firstwin == lastwin)
+ if (ONE_WINDOW)
{
#ifdef FEAT_AUTOCMD
buf_T *old_curbuf = curbuf;
/*
* If there is only one window there is nothing to remove.
*/
- if (tp == NULL ? firstwin == lastwin : tp->tp_firstwin == tp->tp_lastwin)
+ if (tp == NULL ? ONE_WINDOW : tp->tp_firstwin == tp->tp_lastwin)
return NULL;
/*
frame_T *frp;
int b;
- if (tp == NULL ? firstwin == lastwin : tp->tp_firstwin == tp->tp_lastwin)
+ if (tp == NULL ? ONE_WINDOW : tp->tp_firstwin == tp->tp_lastwin)
/* Last window in this tab page, will go to next tab page. */
return alt_tabpage()->tp_curwin->w_frame;