patch 8.1.2154: quickfix window height wrong when there is a tabline

Problem:    Quickfix window height wrong when there is a tabline. (Daniel
            Hahler)
Solution:   Take the tabline height into account. (closes #5058)
diff --git a/src/quickfix.c b/src/quickfix.c
index 136c472..36456ed 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -4046,8 +4046,8 @@
 	    if (sz != win->w_width)
 		win_setwidth(sz);
 	}
-	else if (sz != win->w_height
-			 && win->w_height + win->w_status_height < cmdline_row)
+	else if (sz != win->w_height && win->w_height
+		       + win->w_status_height + tabline_height() < cmdline_row)
 	    win_setheight(sz);
     }
 
diff --git a/src/testdir/test_quickfix.vim b/src/testdir/test_quickfix.vim
index e0ab2b3..84cdb6c 100644
--- a/src/testdir/test_quickfix.vim
+++ b/src/testdir/test_quickfix.vim
@@ -297,6 +297,18 @@
   quit
 endfunc
 
+func Test_copenHeight_tabline()
+  set tabline=foo showtabline=2
+  copen
+  wincmd H
+  let height = winheight(0)
+  copen 10
+  call assert_equal(height, winheight(0))
+  quit
+  set tabline& showtabline&
+endfunc
+
+
 " Tests for the :cfile, :lfile, :caddfile, :laddfile, :cgetfile and :lgetfile
 " commands.
 func XfileTests(cchar)
diff --git a/src/version.c b/src/version.c
index 3392914..165756a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -754,6 +754,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2154,
+/**/
     2153,
 /**/
     2152,